leetcode 17-> Letter Combinations of a Phone Number

 

class Solution(object):
    def letterCombinations(self, digits):
        """
        :type digits: str
        :rtype: List[str]
        """
        
        if digits == "":
            return []
        
        nums_to_letters = {
            2: "abc",
            3: "def",
            4: "ghi",
            5: "jkl",
            6: "mno",
            7: "pqrs",
            8: "tuv",
            9: "wxyz"
        }
        
        combs = [""]
        for digit in digits:
            new_combs = []
            for comb in combs:
                for letter in nums_to_letters[int(digit)]:
                    new_combs.append(comb + letter)
            combs = new_combs
            
        return combs

 

posted @ 2019-03-13 18:24  anobscureretreat  阅读(152)  评论(0编辑  收藏  举报