首页 > 其他 > 详细

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

时间:2020-04-29 13:40:29      阅读:62      评论:0      收藏:0      [点我收藏+]

技术分享图片

回溯法

思路:

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

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. 电话号码的字母组合

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!