力扣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));
相关推荐
richard_yuu16 小时前
数据结构|二叉树高阶进阶-经典算法
数据结构·c++·算法
不知名的忻16 小时前
Dijkstra算法(朴素版&堆优化版)
java·数据结构·算法··dijkstra算法
TA远方16 小时前
【JavaScript】Promise对象使用方式研究和理解
javascript·编程·脚本·web·js·promise·委托
ZC跨境爬虫17 小时前
跟着 MDN 学 HTML day_36:(深入理解 Comment 接口与 DOM 注释节点)
前端·javascript·ui·html·音视频·视频编解码
栉甜18 小时前
Js进阶(4)
开发语言·javascript·原型模式
YL2004042618 小时前
027合并两个有序链表
java·数据结构·算法·链表
Zephyr_019 小时前
java数据结构
java·数据结构
村上小树19 小时前
非常简单地学习一下shareDB的原理
前端·javascript
Hilaku19 小时前
求求你们🙏 ,别再换打包工具了?
前端·javascript·程序员
用户新19 小时前
V8引擎 精品漫游指南--Ignition篇(下 二) JavaScript 栈帧详解
前端·javascript