题目:打印N对合理括号组合,比如输入3 输出
((()))
()(())
()()()
(())()
(()())
void PrinAr(char *str,int pos,int left,int right)
{
//pos为写入的位置
if(NULL == str || left < 0 || right < left) return;
if(left == 0 && right == 0)
{
cout<<str<<endl;//写入完毕
return ;
}
i

本文介绍了如何使用分治策略来解决打印N对合理括号组合的问题。当left不为0时,可以继续插入'(',而当剩余的right大于left时,可以插入')'。这一思想应用于递归过程,可以生成所有合法的括号序列,例如输入3时,输出包括'((()))', '()(())', '()()()', '(())()', '(()())'等组合。"
117535554,9852665,Nessus漏洞扫描指南,"['安全', '漏洞扫描', 'Nessus', '渗透测试', '网络安全']
最低0.47元/天 解锁文章
566

被折叠的 条评论
为什么被折叠?



