千家信息网

Java怎么生成括号

发表于:2025-01-26 作者:千家信息网编辑
千家信息网最后更新 2025年01月26日,本篇内容介绍了"Java怎么生成括号"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Given n p
千家信息网最后更新 2025年01月26日Java怎么生成括号

本篇内容介绍了"Java怎么生成括号"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

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:[  "((()))",  "(()())",  "(())()",  "()(())",  "()()()"]
public class Solution {    public List generateParenthesis(int n) {        ArrayList result = new ArrayList();        dfs(result, "", n, n);        return result;    }    /*    left and right represents the remaining number of ( and ) that need to be added.    When left > right, there are more ")" placed than "(". Such cases are wrong and the method stops.    */    public void dfs(ArrayList result, String s, int left, int right){        if(left > right)    //因为从left开始减一,所以left不可能小于right            return;        if(left==0&&right==0){            result.add(s);            return;        }        if(left>0){            dfs(result, s+"(", left-1, right);          //        }        if(right>0){            dfs(result, s+")", left, right-1);        }    }}

"Java怎么生成括号"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0