LeetCode 022 Generate Parentheses

来源:互联网 发布:php域名跳转 编辑:程序博客网 时间:2024/05/21 09:37

题目要求输出n对小括号的所有合法排列。

回溯法典型题目,回溯过程如下:

//i表示当前有i个左括号等待匹配//k表示当前左括号和右括号的总量为kvoid search(int i, int k, int n) {         if(k == 2 * n) {            if(i == 0)                result.push_back(cur);            return;        }        if(i < n && (2 * n - k) > i) {//加入左括号            cur[k] = '(';            search(i + 1, k + 1, n);        }         if(i > 0) { //加入右括号            cur[k] = ')';            search(i - 1, k + 1, n);        }    }
0 0