JavaScript:平衡括號


給定一個僅由兩種字元“(”和“)”組成的字串。我們需要編寫一個函式,該函式接受這樣的一串字串,並透過儘可能多次插入“(”或“)”來平衡括號。

然後,該函式應該返回平衡字串所需的最小插入次數。例如 −

如果字串為 −

const str = '()))';

那麼輸出應為 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

更新日期: 2020-10-01

2K+ 檢視

開始你的 職業

完成課程獲取認證

開始
廣告
© . All rights reserved.