关于leetcode:22-Generate-Parentheses

76次阅读

共计 419 个字符,预计需要花费 2 分钟才能阅读完成。

class Solution {public List<String> generateParenthesis(int n) {List<String> ans = new ArrayList<>();
        if(n == 0){ans.add("");
            return ans;
        }
        if(n == 1){ans.add("()");
            return ans;
        }
        generator(ans, n, 0, 0, "");
        return ans;
    }
    
    void generator(List<String> ans, int n, int left, int right, String prefix) {if(prefix.length() == 2*n) {ans.add(prefix);
            return;
        }
        if(left > right) {generator(ans, n, left, right+1, prefix+")");
        }
        if(left < n)
        {generator(ans, n, left+1, right, prefix+"(");
        }
    }
}

正文完
 0