力扣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));
相关推荐
Jacob程序员2 小时前
leaflet绘制室内平面图
android·开发语言·javascript
eguid_12 小时前
JavaScript图像处理,常用图像边缘检测算法简单介绍说明
javascript·图像处理·算法·计算机视觉
sunly_2 小时前
Flutter:自定义Tab切换,订单列表页tab,tab吸顶
开发语言·javascript·flutter
涅槃寂雨3 小时前
C语言小任务——寻找水仙花数
c语言·数据结构·算法
『往事』&白驹过隙;3 小时前
操作系统(Linux Kernel 0.11&Linux Kernel 0.12)解读整理——内核初始化(main & init)之缓冲区的管理
linux·c语言·数据结构·物联网·操作系统
咔咔库奇3 小时前
【TypeScript】命名空间、模块、声明文件
前端·javascript·typescript
就爱学编程3 小时前
从C语言看数据结构和算法:复杂度决定性能
c语言·数据结构·算法
NoneCoder3 小时前
JavaScript系列(42)--路由系统实现详解
开发语言·javascript·网络
半桔3 小时前
栈和队列(C语言)
c语言·开发语言·数据结构·c++·git
又迷茫了3 小时前
vue + element-ui 组件样式缺失导致没有效果
前端·javascript·vue.js