输入N对括号,输出正确的配对组合

来源:互联网 发布:linux拷贝文件夹命令 编辑:程序博客网 时间:2024/06/08 11:49
package com.mianshi.ms;import java.util.Stack;/**  * 类说明 输入N对括号,输出正确的配对组合 */public class NPair {    public static Stack<String> doCompute(int N){        Stack<String > stack=new Stack<String>();        if(N==1){            stack.push("()");            return stack;        }        Stack<String> stack2=doCompute(N-1);        while(stack2.size()>0){            String valString=stack2.pop();            stack.push("("+valString+")");            stack.push("()"+valString);            if(!("()"+valString).equals(valString+"()")){                stack.push(valString+"()");            }        }        return stack;    }        public static void main(String[] args) {        Stack<String> stack=new Stack<String>();        int N=3;        stack=doCompute(N);        for(String val:stack){            System.out.println(val);        }    }}

原创粉丝点击