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

网站建设代理接广告推广

网站建设代理,接广告推广,网站制作书生,旅游网站建设方案LeetCode 22. 括号生成 题目描述 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 解题思路 天天到处看答案,看的灵神的解题思路回溯不会写?套路在此!(Pyth…

LeetCode 22. 括号生成

题目描述

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

解题思路

天天到处看答案,看的灵神的解题思路回溯不会写?套路在此!(Python/Java/C++/Go/JS),只能感叹我自己能力有限,看答案也要瞅半天(主要非常容易走神。。。)

  1. 在dfs中不断地枚举可能得答案,我的理解是,在灵神的枚举顺序里,大概是先枚举那种全部左括号组合的、再枚举那种左右括号组合的,得到最后的结果;
  2. 对于枚举方法,传入的参数是目前填的括号总数i和目前的左括号个数open
  3. 一开始写终止条件:if(i==n*2),也就是括号个数满足要求了,就存答案,return;
  4. 接下来,第一步先放左括号if(open<n),在这里边不断地递归每填一个左括号的结果
  5. 上面递归放完了所有左括号后,再考虑左右括号配对的解法,于是通过if(i-open<open)的方式来填写右括号

代码

class Solution {private int n; // 括号对数,也就是左括号的最大个数private final List<String> ans = new ArrayList<>();private char[] path;public List<String> generateParenthesis(int n) {this.n = n;path = new char[n * 2];dfs(0,0);return ans;}// i 表示目前一共填的括号数(左+右)// open = 左括号个数;i-open = 右括号个数private void dfs(int i, int open) {if (i == n * 2) {// 左右括号防止完毕,记录答案ans.add(new String(path));return ;}if (open < n){ // 当前还可以放左括号path[i] = '(';dfs(i + 1, open + 1); // 总括号数量+1,左括号数量+1}if (i - open < open){ // 如果左括号放不了就该放右括号了path[i] = ')';dfs(i + 1, open);}}
}
http://www.dt0577.cn/news/30183.html

相关文章:

  • 山东济南网站建设公司百度竞价开户渠道
  • 网站建设时时彩网络seo优化
  • 哪个网站有激光打标业务做电商网站建设公司哪家好
  • 长沙 做网站企业网站推广可以选择哪些方法
  • 网站怎么做才能赚钱在线培训平台哪家好
  • 深做网站公司活动策划公司
  • 各大网站的域名是什么原因品牌网络推广
  • wordpress打赏赚钱重庆网页优化seo
  • 如何做网站内容管理torrentkitty磁力官网
  • 如何做deal网站推广如何提高关键词搜索排名
  • 建设银行河南省分行招聘网站360外链
  • 担路网口碑做网站好吗百度推广是什么
  • 网站建设管理 优帮云做网络推广工作怎么样
  • 做网站公司职员工资百度平台商家客服电话
  • 苹果电脑用什么软件做网站抖音搜索seo排名优化
  • 南京做代账会计在哪个网站上找简述什么是seo
  • wordpress怎么使用插件济南seo优化外包
  • 手机wap网站建设哪里有seo排名优化
  • 妻子2018高清免费视频黑帽seo优化软件
  • 美橙互联 网站备案拍照网站开发的基本流程
  • 廊坊做网站电话网络营销有哪些就业岗位
  • 聊城做网站的公司机构网站设计说明
  • 美容行业培训网站建设郑州百度搜索优化
  • 网站的上一页怎么做的网站建站网站
  • 我做动作你来猜的网站河南seo技术教程
  • 河北电子商务网站建设免费建立个人网站凡科
  • 智通人才招聘网东莞关键词seo优化
  • 响应式网站是什么意思国外产品推广平台
  • 做网站最好的公湖南企业seo优化报价
  • 做网站先做前台还是后台海外营销推广服务