class Solution(object):
def letterCombinations(self, digits):
"""
:type digits: str
:rtype: List[str]
"""
res = []
s = ""
map = ["","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"]
if len(digits) == 0:
return []
def backtrack(index,digits,s):
if index == len(digits):
res.append(s)
return
digit = int(digits[index]) #index是数字串的访问控制,每次往后移动一个
letter = map[digit]
for i in range(len(letter)): #对数字键对应的字符串进行回溯,这里不用标记访问元素的原因是移动了数字串。
s += letter[i]
backtrack(index+1,digits,s)
s = s[:-1]
backtrack(0,digits,s)
return res
LC17. 电话号码的字母组合
于 2022-03-12 13:46:28 首次发布