leetcode 17 电话号码的字母组合(python)

在这里插入图片描述

  1. 本题题意是找出所有的排列;
  2. 利用递归+循环的方法找出所有的排列;

官方题解:
代码如下:

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
发布了100 篇原创文章 · 获赞 3 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/cy_believ/article/details/104200439
今日推荐