Problem
Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.
For example, given n = 3, a solution set is:
[ "((()))", "(()())", "(())()", "()(())", "()()()" ]Solution
class Solution { public ListgenerateParenthesis(int n) { List res = new ArrayList<>(); helper(0, 0, n, "", res); return res; } private void helper(int left, int right, int total, String str, List res) { if (str.length() == total*2) { res.add(str); return; } if (left < total) { helper(left+1, right, total, str+"(", res); } if (right < left) { helper(left, right+1, total, str+")", res); } } }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/77296.html
摘要:复杂度思路注意的地方,要限制左括号和右括号。每出现一次左括号,就相对于限定了,最多只能出现那么多右括号。所以,为了完成这种限定,用来控制。不然会有的情况出现。 LeetCode[22] Generate Parentheses Given n pairs of parentheses, write a function to generate all combinations of ...
摘要:当右括号和左括号的剩余量均为时,及为一个最终结果。而则会在直接原来的对象上进行修改,其指针仍然指向原来的对象。因此在递归的过程中使用一定要注意,对对象的修改不要相互干扰。 题目要求 Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses....
摘要:要求返回一个中包含组括号所有可能的符合规则的组合。例如输入结果集应当是想法输入的就代表着我们的字符串的组成是个和个。我们需要跟踪和的使用情况,来判断下一步的操作是否合法。 题目详情 Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses....
摘要:前言从开始写相关的博客到现在也蛮多篇了。而且当时也没有按顺序写现在翻起来觉得蛮乱的。可能大家看着也非常不方便。所以在这里做个索引嘻嘻。顺序整理更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新 前言 从开始写leetcode相关的博客到现在也蛮多篇了。而且当时也没有按顺序写~现在翻起来觉得蛮乱的。可能大家看着也非常不方便。所以在这里做个索引嘻嘻。 顺序整理 1~50 1...
阅读 712·2021-10-14 09:42
阅读 1966·2021-09-22 15:04
阅读 1569·2019-08-30 12:44
阅读 2133·2019-08-29 13:29
阅读 2729·2019-08-29 12:51
阅读 542·2019-08-26 18:18
阅读 697·2019-08-26 13:43
阅读 2803·2019-08-26 13:38