leetcode题库17.电话号码的字母组合

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 (映射同九宫格输入法)

题目链接

  • 嵌套套嵌套
class Solution:
    def letterCombinations(self, digits: str) -> List[str]:
        dict={
    
    }
        dict[2]="a b c".split()
        dict[3]="d e f".split()
        dict[4]="g h i".split()
        dict[5]="j k l".split()
        dict[6]="m n o".split()
        dict[7]="p q r s".split()
        dict[8]="t u v".split()
        dict[9]="w x y z".split()

        ans = []

        for digit in digits:
            if ans ==[]:
                for i in range(len(dict[int(digit)])):
                    ans.append(dict[int(digit)][i])
            else:
                list = []
                for tans in ans:
                    for i in range(len(dict[int(digit)])):
                        list.append(tans+str(dict[int(digit)][i]))
                ans=list

        return ans


猜你喜欢

转载自blog.csdn.net/weixin_56336619/article/details/115054596