Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

การตรวจสอบการสมดุลของวงเล็บใน JavaScript

คำอธิบาย

เขียนฟังก์ชันที่รับสตริงที่ประกอบด้วย '(' และ ')' และคืนค่าจำนวนวงเล็บที่ต้องเพิ่มน้อยที่สุดเพื่อให้สมดุล

ตัวอย่าง

str = '()))' → ต้องเพิ่ม '((' 2 ตัว → ผลลัพธ์ 2

ตัวอย่างโค้ด

const str = '()))';

const balanceParanthesis = str => {
  let paren = [];
  for (let i = 0; i < str.length; i++) {
    if (str[i] === "(") {
      paren.push(str[i]);
    } else if (str[i] === ")") {
      if (paren[paren.length - 1] === "(") {
        paren.pop();
      } else {
        paren.push("#");
      }
    }
  }
  return paren.length;
};

console.log(balanceParanthesis(str));

ผลลัพธ์

2