写在前面的话

做题的过程很酸爽(花了5h),有心流,有宕机...

算法题:

给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。

给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。

 

Day 27/100 电话号码的字母组合问题

示例:

输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].

说明:

尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。

 

(一) 些许感悟

1、算法,是编程的灵魂。

当看到大神,将解题的过程凝练为算法思路时,惊为天人。

2、基础不扎实

到写的时候,才发现,自己的基础不扎实,好多用法记不清。渣渣...

3、一定要清楚的理解题目

写了3个小时代码的时候,发现自己,理解错了。题目没那么复杂

有种心态瞬间崩溃的感觉...

 

(二) 解题思路

1、将字符串,转换为数组

 

Day 27/100 电话号码的字母组合问题

注意其中数组中为undefined时的处理

2、两两组合,多个字符串时递归

 

Day 27/100 电话号码的字母组合问题

需要考虑单个数字的情况

3、特殊情况的处理

1)数字1的处理:要删掉

2)空字符串的处理:直接返回数组

 

提交代码后,成功了。

Day 27/100 电话号码的字母组合问题

差点喜极而泣~

虽然,执行跑分还不理想,但是,先完成,再完美哈~

 

温馨提示:

1、直接用字符串方法处理,会好一些;


2、上文代码链接:

https://github.com/iguoxing/fe/blob/master/fe/leetcode/js/4.phone_numbe.html

 

3、贴一个大神的解题思路

 

Day 27/100 电话号码的字母组合问题

膜拜下

 

 

参考链接:

https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/solution/shou-hua-tu-jie-liang-chong-jie-fa-dfshui-su-bfsya/

 

以上

 

相关文章:

  • 2021-04-25
  • 2021-06-02
  • 2021-12-02
  • 2021-05-29
  • 2021-10-09
  • 2021-05-07
  • 2021-04-10
  • 2022-01-16
猜你喜欢
  • 2021-04-19
  • 2021-12-06
  • 2022-01-23
  • 2021-11-19
  • 2022-01-22
  • 2021-09-02
相关资源
相似解决方案