力扣22 括号生成

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

示例 1:

复制代码
输入:n = 3
输出:["((()))","(()())","(())()","()(())","()()()"]

示例 2:

复制代码
输入:n = 1
输出:["()"]
javascript 复制代码
/**
 * @param {number} n
 * @return {string[]}
 */
var generateParenthesis = function(n) {
   let res = [],path='',close=0,open=0
   dps(res,path,close,open,n)
   return res
};
let dps = function(res,path,close,open,n){
   if (open>n||close>open) {
      return
   }
   if (path.length==2*n) {
      res.push(path)
   }
   dps(res,path+"(",close,open+1,n)
   dps(res,path+")",close+1,open,n)
}
console.log(generateParenthesis(3));
相关推荐
一只小鸟儿10 分钟前
门户短信发送验证码及验证功能
前端·javascript·jquery
Bdygsl12 分钟前
数据结构 —— 双向循环链表
数据结构·链表
程序员阿鹏16 分钟前
怎么理解削峰填谷?
java·开发语言·数据结构·spring·zookeeper·rabbitmq·rab
talenteddriver24 分钟前
mysql: MySQL中between子句和limit子句的区别
前端·javascript·数据库
LYFlied1 小时前
【每日算法】LeetCode 300. 最长递增子序列
前端·数据结构·算法·leetcode·职场和发展
我是小邵1 小时前
【踩坑实录】一次 H5 页面在 PC 端的滚动条与轮播图修复全过程(Vue + Vant)
前端·javascript·vue.js
2501_946230982 小时前
Cordova&OpenHarmony外观主题设置
android·javascript
军军君012 小时前
Three.js基础功能学习一:环境资源及基础知识
开发语言·javascript·学习·3d·前端框架·threejs·三维
千寻girling2 小时前
面试官: “ 请你说一下什么是 ajax ? ”
前端·javascript
@大迁世界2 小时前
JavaScript 框架的终结
开发语言·前端·javascript·ecmascript