力扣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));
相关推荐
天若有情6737 分钟前
从语法拆分到用户感知:我的前端认知重构之路
前端·javascript
无限进步_12 分钟前
203. 移除链表元素 - 题解与详细分析
c语言·开发语言·数据结构·git·链表·github·visual studio
摘星编程14 分钟前
用React Native开发OpenHarmony应用:DrawerNavigation侧滑关闭
javascript·react native·react.js
阿蒙Amon14 分钟前
TypeScript学习-第2章:基础类型
javascript·学习·typescript
DreamOneDay23 分钟前
MapLibre GL JS加载ArcGis Terrain3D地形
javascript·3d·arcgis·maplibre·terrain3d
10岁的博客32 分钟前
C语言造轮子大赛
java·c语言·数据结构
努力努力再努力wz33 分钟前
【Linux网络系列】:打破 HTTP 明文诅咒,在Linux 下用 C++ 手搓 HTTPS 服务器全过程!(附实现源码)
linux·服务器·网络·数据结构·c++·http·https
POLITE335 分钟前
Leetcode 236. 二叉树的最近公共祖先 (Day 17) JavaScript
linux·javascript·leetcode
@Aurora.35 分钟前
优选算法【专题七:分治】
数据结构·算法·排序算法
雨季66637 分钟前
构建 OpenHarmony 简易数字猜谜游戏:用随机与反馈打造轻量级互动体验
javascript·flutter·游戏·ui·自动化·dart