22. Generate Parentheses 產生括號組
❀ Origin
Problem
Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.
Example
1 | Input: n = 3 |
❀ 翻譯
問題
給定 n 對的括號, 編寫一個函數來產生所有格式正確的括號的組合.
❀ Solution
JavaScript
1 | var generateParenthesis = function(n) { |
Idea
- n 代表每個元素會有 n 個 ‘(‘ 和 n 個 ‘)’
- 建立一個字串 current 來暫存還沒組合完成的括弧
- current 的長度等於 2 * n 時, 及代表正確括號, 即可推到結果陣列 arrResult
- 使用遞迴, 先判斷 left 要小於 n
- 判斷 right 小於 left , 才能滿足括號規則
- Ref. soleil 阿璐
Execution
1 | countRecurse: 1 | current : | 0 0 |