Leetcode 22.括号生成 (每日一题 20210623)
生活随笔
收集整理的這篇文章主要介紹了
Leetcode 22.括号生成 (每日一题 20210623)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
數字 n?代表生成括號的對數,請你設計一個函數,用于能夠生成所有可能的并且 有效的 括號組合。示例 1:輸入:n = 3
輸出:["((()))","(()())","(())()","()(())","()()()"]
示例 2:輸入:n = 1
輸出:["()"]提示:1 <= n <= 8鏈接:https://leetcode-cn.com/problems/generate-parenthesesclass Solution:def generateParenthesis(self, n: int) -> List[str]:if n <= 0:return []res = []def dfs(str_path, left, right):if left >n or right > left:returnif len(str_path) == 2*n:res.append(str_path)return dfs(str_path + "(", left + 1, right)dfs(str_path + ")", left, right + 1)dfs("", 0, 0)return res參考題解思路: https://leetcode-cn.com/problems/generate-parentheses/solution/sui-ran-bu-shi-zui-xiu-de-dan-zhi-shao-n-0yt3/
?
總結
以上是生活随笔為你收集整理的Leetcode 22.括号生成 (每日一题 20210623)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Leetcode 198.打家劫舍 (每
- 下一篇: Leetcode 24.两两交换链表的节