

Python,速成心法
敲代码,查资料,问Ai
练习,探索,总结,优化

★★★★★博文创作不易,源码代码的过程中,如有疑问的地方,欢迎大家指正留言交流。喜欢的老铁可以多多点赞+收藏分享+置顶,小红牛在此表示感谢。★★★★★
Python打包教程07:还不会用--add-data参数,添加资源文件吗?
Python打包教程04:UPX安装与使用(减小.exe体积)
Python打包教程03:PyInstaller命令使用指南
Python教程:PyCharm安装过程中遇到的中英文对照表
Python教程:找到字符串中最长回文子串(上海自来水来自海上)
# 示例输入:n = 3输出:["((()))", "(()())", "(())()", "()(())", "()()()"]输入:n = 1输出:["()"]
↓ 完整源码如下 ↓
# -*- coding: utf-8 -*-# @Author : 小红牛# 微信公众号:wdPythondef generate_parenthesis(n: int):"""生成所有有效的括号组合。参数:n: 括号对数返回:List[str]: 所有有效组合的列表"""result = []def backtrack(current: str, left: int, right: int):"""current: 当前构建的字符串left: 已使用的左括号数量right: 已使用的右括号数量"""if len(current) == 2 * n:result.append(current)return# 只要还有左括号,就可以添加左括号if left < n:backtrack(current + '(', left + 1, right)# 只有右括号数量小于左括号数量时,才能添加右括号if right < left:backtrack(current + ')', left, right + 1)backtrack("", 0, 0)return result# 测试用例if __name__ == "__main__":print(generate_parenthesis(3))# 输出: ['((()))', '(()())', '(())()', '()(())', '()()()']print(generate_parenthesis(1)) # ['()']print(generate_parenthesis(2)) # ['(())', '()()']
完毕!!感谢您的收看
------★★历史博文集合★★------
