码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode 每日一题 17. 电话号码的字母组合

时间:2020-04-29 12:57:46      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:elf   git   nbsp   tco   sel   div   append   思路   def   

技术图片

回溯法

思路:

通过回溯的思维,递归调用枚举出所有可能。

class Solution:
    def letterCombinations(self, digits):
        phone = {2: [a, b, c],
                 3: [d, e, f],
                 4: [g, h, i],
                 5: [j, k, l],
                 6: [m, n, o],
                 7: [p, q, r, s],
                 8: [t, u, v],
                 9: [w, x, y, z]}
                
        def backtrack(combination, next_digits):
            if len(next_digits) == 0:
                output.append(combination)
            else:
                for letter in phone[next_digits[0]]:
                    backtrack(combination + letter, next_digits[1:])
                    
        output = []
        if digits:
            backtrack("", digits)
        return output

 

leetcode 每日一题 17. 电话号码的字母组合

标签:elf   git   nbsp   tco   sel   div   append   思路   def   

原文地址:https://www.cnblogs.com/nilhxzcode/p/12801313.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!