博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode 22-Generate Parentheses(medium)
阅读量:5169 次
发布时间:2019-06-13

本文共 1154 字,大约阅读时间需要 3 分钟。

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

 

backtracking

a function to achieve backtracking: 

a list to record all the combination, a string str to record the trial subset at the moment, a number index to record the number of char in the subset, and a number to record left parentheses number(to make sure always on the right way to a valid combination)

1. index=n*2 means we have got an answer, add this subset to list;

2. left bracket number<n, means we can still add another left bracket to the subset;

3. right bracket number<left bracket, means we can still add another right bracket to the subset;

follow this rule to do backtracking.

class Solution {    public List
generateParenthesis(int n) { List
list=new ArrayList<>(); if(n==0) return list; generate(list, "", n, 0, 0); return list; } public void generate(List
list, String str, int n, int nleft, int index){ if(index>=2*n){ list.add(str);return; } if(nleft

 

转载于:https://www.cnblogs.com/yshi12/p/9690142.html

你可能感兴趣的文章
Java网络编程--socket服务器端与客户端讲解
查看>>
List_统计输入数值的各种值
查看>>
学习笔记-KMP算法
查看>>
Timer-triggered memory-to-memory DMA transfer demonstrator
查看>>
跨域问题整理
查看>>
[Linux]文件浏览
查看>>
获取国内随机IP的函数
查看>>
今天第一次写博客
查看>>
江城子·己亥年戊辰月丁丑日话凄凉
查看>>
Spring Mvc模式下Jquery Ajax 与后台交互操作
查看>>
(转)matlab练习程序(HOG方向梯度直方图)
查看>>
『Raid 平面最近点对』
查看>>
【ADO.NET基础-数据加密】第一篇(加密解密篇)
查看>>
STL中的优先级队列priority_queue
查看>>
UE4 使用UGM制作血条
查看>>
浏览器对属性兼容性支持力度查询网址
查看>>
虚拟机长时间不关造成的问题
查看>>
面试整理:Python基础
查看>>
Program exited with code **** 相关解释
查看>>
tableView
查看>>