当前位置: 首页 > news >正文

如何进入微网站静态网站怎么做

如何进入微网站,静态网站怎么做,wordpress tags页面,服装设计的基本知识文章目录 题目链接解题思路解题代码 题目链接 22. 括号生成 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 示例 1: 输入:n 3 输出:[“((()))”,“(()())”,“(())()…

文章目录

  • 题目链接
  • 解题思路
  • 解题代码


题目链接

22. 括号生成

数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。

示例 1:
输入:n = 3
输出:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]

示例 2:
输入:n = 1
输出:[“()”]

解题思路

下面我们根据回溯算法三步走,写出对应的回溯算法。

明确所有选择:括号组合中的每个位置,都可以从 ( 或者 ) 中选出。并且,只有在 symbol < n 的时候,才能选择 (,在 symbol > 0 的时候,才能选择 )。
明确终止条件:当遍历到决策树的叶子节点时,就终止了。即当前路径搜索到末尾时,递归终止。
将决策树和终止条件翻译成代码:

  • 定义回溯函数:
    • backtracking(symbol, index): 函数的传入参数是 symbol(用于表示是否当前组合是否成对匹配),index(当前元素下标),全局变量是 parentheses(用于保存所有有效的括号组合),parenthesis(当前括号组合)。
    • backtracking(symbol, index) 函数代表的含义是:递归根据 symbol,在 ( 和 ) 中选择第 index 个元素。
  • 书写回溯函数主体(给出选择元素、递归搜索、撤销选择部分)。
    • 从当前正在考虑元素,到第 2 * n 个元素为止,枚举出所有可选的元素。对于每一个可选元素:
      • 约束条件:symbol < n 或者 symbol > 0。
      • 选择元素:将其添加到当前括号组合 parenthesis 中。
      • 递归搜索:在选择该元素的情况下,继续递归选择剩下元素。
      • 撤销选择:将该元素从当前括号组合 parenthesis 中移除。
if symbol < n:parenthesis.append('(')backtrack(symbol + 1, index + 1)parenthesis.pop()
if symbol > 0:parenthesis.append(')')backtrack(symbol - 1, index + 1)parenthesis.pop()
  • 明确递归终止条件(给出递归终止条件,以及递归终止时的处理方法)。
    • 当遍历到决策树的叶子节点时,就终止了。也就是当 index == 2 * n 时,递归停止。
    • 并且在 symbol == 0 时,当前组合才是有效的,此时将其加入到最终答案数组中。

解题代码

class Solution:def generateParenthesis(self, n: int) -> List[str]:parentheses = []parenthesis = []def backtrack(symbol, index):if n * 2 == index:if symbol == 0:parentheses.append("".join(parenthesis))else:if symbol < n:parenthesis.append('(')backtrack(symbol + 1, index + 1)parenthesis.pop()if symbol > 0:parenthesis.append(')')backtrack(symbol - 1, index + 1)parenthesis.pop()backtrack(0, 0)return parentheses

参考资料:datawhalechina

http://www.15wanjia.com/news/173586.html

相关文章:

  • 怎么做二手房网站如何把自己电脑做网站服务器
  • 西宁圆井模板我自己做的网站网站建设需要大约多少钱
  • 上海专业做网站公司有哪些域名网查询
  • dart语言做的网站网站开发与建设的原则
  • 流量套餐网站网站建设与经营
  • 西安企业建站费用可信赖的响应式网站
  • php网站开发试卷深圳市住建局官网
  • 做企业展示网站需要多少钱WordPress降低搜索数据库
  • 做外贸在哪个网站找客户旅行社营业部管理办法
  • 服装品牌网站怎么做公司注册网上怎样注册
  • 城乡住房和城乡建设厅网站首页在ppt里面做网站链接
  • 如何做话费卡回收网站家乡介绍网页设计
  • 王璞网站开发实战答案直播教育网站建设
  • 网站开发可以用两种语言吗濮阳市城乡一体化示范区七星医院
  • 赤峰中国建设招标网站游戏网页游
  • 免费自助制作永久网站怎么用linux做网站服务器吗
  • 手机h5网站模板下载dream chaser wordpress
  • 东莞做网站那家好腾讯cdc用wordpress
  • dede装修网站模板公司模块化建设的意义
  • 做一电影网站怎么赚钱吗个人网站的版权怎么写
  • 行唐县网站建设公司frontpage可以做网站吗
  • 快速搭建网站后台成都培训机构哪家好
  • 华为网站建设费用创建网站需要哪些过程
  • 那些公司做网站好企业网站托管价格
  • 网站源码在线提取暴雪战网官网
  • 吉安市建设规划局网站手机视频网站设计
  • 自己建设网站怎么做视频剪辑课程
  • 哈尔滨php网站开发公司养生网站建设
  • 做一个简单的公司网站要多少钱无锡设计师网站
  • 网站优化公司seo案例js模拟点击网站的按钮