LeetCode 17. 電話號碼的字母組合(回溯)

題目描述

給定一個僅包含數字 2-9 的字符串,返回所有它能表示的字母組合。
給出數字到字母的映射如下(與電話按鍵相同)。注意 1 不對應任何字母。

在這裏插入圖片描述

思路

詳見鏈接

代碼

class Solution:
	def letterCombination(self,digits):
		output = []
		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:])
		if digits:
			backtrack("",digits)
		return output
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章