2 0 1 9 -6-12 星 期三 开 始 吧
上 一 题 链 接 Leetcode基础刷题之 PHP 解析(47. Permutations II)
题 目 描 述
给定两个整型数字n和k,返回1到n的k个数所有组合情况。
题 目 分 析
还是和之前的题目一样,定义了两个数组,一个存储单次的组合,一个存储最后的所有组合,那么每次当前组合中的个数等于k的时候,就把当前小组合push到大组合中,否则的话继续递归。
/**
* @param Integer $n
* @param Integer $k
* @return Integer[][]
*/
function combine($n, $k) {
$res=[];
$out=[];
$this->helper($n,$k,1,$out,$res);
return $res;
}
function helper($n,$k,$level,&$out,&$res){
if(count($out)==$k){
array_push($res,$out);
return ;
}
for($i=$level;$i<=$n;$i++){
array_push($out,$i);
$this->helper($n,$k,$i+1,$out,$res);
array_pop($out);
}
}
Github整理地址 : https://github.com/wuqinqiang/leetcode-php
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Perl语言入门 第六版(中文版)
Randal L.Schwartz、brian d foy、Tom Phoenix / 盛春 / 东南大学出版社 / 2012-3 / 62.00元
《Perl语言入门(第6版)(中文版)》根据作者施瓦茨、福瓦、菲尼克斯从1991年开始的教学经验积累汇聚而成,多年来十分畅销。此次第六版涵盖了最新的Perl5.14版本的变化。《Perl语言入门(第6版)(中文版)》每章都包含若干习题,帮助你巩固消化刚学到的知识。也许其他书籍只是想着灌输Perl编程的条条框框,但《Perl语言入门(第6版)(中文版)》不同,我们希望把你培养成一名真正的Perl程序......一起来看看 《Perl语言入门 第六版(中文版)》 这本书的介绍吧!