|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
def letterCombinations(digits: str) -> list[str]:
if not digits:
return list()
phoneMap = {
"2": "ab",
"3": "de",
"4": "ghi",
"5": "jkl",
"6": "mno",
"7": "pqrs",
"8": "tuv",
"9": "wxyz",
}
def backtrack(index: int):
if index == len(digits):
combinations.append("".join(combination))
else:
digit = digits[index]
for letter in phoneMap[digit]:
combination.append(letter)
print(combination)
backtrack(index + 1)
#print(combination)
combination.pop()
#print(combination)
#print(index)
combination = list()
combinations = list()
backtrack(0)
return combinations
print(letterCombinations("23"))
为啥上述代码输出的结果是['a']
['a', 'd']
['a', 'e']
['b']
['b', 'd']
['b', 'e']
['ad', 'ae', 'bd', 'be']
pop不是会把首个元素a去掉吗?
|
|