LeetCode 筆記 - 22. Generate Parentheses
分析 LeetCode 經典的回溯 (Backtracking) 題目:產生所有合法的括號組合。本文探討如何透過遞迴限制左括號與右括號的使用數量,確保生成的字串符合對稱規則,是練習演算法思維的良好範例。
給你 n 這個數字,請產生 n 個括號的所有組合。
Example 1:
Input: n = 3
Output: [“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]
Example 2:
Input: n = 1
Output: [“()”]
解題思維
這題其實輸入才 1 ~ 8,應該是有人就直接寫死答案了 🤣
但我們在這裡不做這種事 😎
這題我們使用 backtracking,來產生所有組合即可。
程式碼
1 | class Solution: |