本文主要是介绍用 PHP 来刷leetCode 之 括号生成,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。
例如,给出 n = 3,生成结果为:
["((()))","(()())","(())()","()(())","()()()" ]
class Solution {public $arr=[];/*** @param Integer $n* @return String[]*/function generateParenthesis($n) {$this->handle("",0,0,$n);return $this->arr;}function handle($str,$left,$right,$n){if($left==$n && $right==$n){$this->arr[] = $str;return ;}if ($left<$n){$this->handle($str."(",$left+1,$right,$n);}if ($right<$left){$this->handle($str.")",$left,$right+1,$n);}}
}
这篇关于用 PHP 来刷leetCode 之 括号生成的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!