内容简介:之前把Leetcode上关于二叉树整理出了14道经典题目,如果面试写不出来,那麻烦你手写一个红黑树吧
2 0 1 9 -6-3 星 期一 开 始 吧
之前把Leetcode上关于二叉树整理出了14道经典题目,如果面试写不出来,那麻烦你手写一个红黑树吧
题 目 描 述
让我们根据电话号码的数字,组合所有情况的字符串,题目给的是23,对应着九种组合。
题 目 分 析
思想就是把给定的数字一位位拿出来,获取它指定的字符串集,然后和其他位上的数字字符串集和一位位进行组合。
/** * @param String $digits * @return String[] */ function letterCombinations($digits) { return $this->helper($digits,""); } function helper($digits,$char) { $array = ["", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"]; $res=[]; $strings=$array[$digits[0]]; $len=strlen($strings); for($i=0;$i<$len;$i++){ $val=$strings[$i]; if(strlen($digits)==1){ //如果给定只有一个数字的话 array_push($res,$char.$val); }else{ $moreStrings=$this->helper(substr($digits,1),$char.$val); foreach($moreStrings as $more){ array_push($res,$more); } } } return $res; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 17. Letter Combinations of a Phone Number
- 17. Letter Combinations of a Phone Number
- [LeetCode]17. Letter Combinations of a Phone Number
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。