LeetCode力扣_第十七题_电话号码的字母组合 回溯算法
学到学到了,妙啊妙啊

题目:
给定一个仅包给出数字到字母的映射如下(含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。与电话按键相同)。注意 1 不对应任何字母。对应的是9键输入法中的按钮字母;
例:
仔细阅读题目可以知道,其实就是一个树状分支,2对应的字符和3对应的字符相乘得到最终的字母组合。
那么在代码实现的头一步就是构建字典。然后再对手机号码进行遍历,取出对应的字符组合。这个时候遇到了盲点,就是:
比如第一个数我取其对应的第一个字符,第二个数也一样,直到最后一个也是。然后组合成第一个转换后的字符串;但是接下来怎么变,这里虽然思维想得到,但是代码就是想不出来,就是最后一位字符变化,把所有情况都取完,比如 ‘a’+‘d’,a’+‘e’,a’+‘f‘。但是取完之后前一位再变化,比如’a‘变成’b‘,后面的要继续变换’d‘->'e'->'f'。
虽然有想法,就是每一个位次都用一个变量来代替,再range(len(这个数值对应的字串列表))中变化,但是仔细打量打量发现是较笨的方法,但是由于本人学浅—>苦苦找不到合适的思路。
后来在官方题解和网友解答的帮助之下豁然开朗:贴出代码以日后继续复习:
!!!
继续加油555

https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/solution/dian-hua-hao-ma-de-zi-mu-zu-he-by-leetcode-solutio/
https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/solution/hui-su-dui-lie-tu-jie-by-ml-zimingmeng/