添加 0017.电话号码的字母组合 python3版本

添加 0017.电话号码的字母组合 python3版本
This commit is contained in:
jojoo15
2021-05-24 18:52:00 +02:00
committed by GitHub
parent e9f8cdacfc
commit ac005060cd

View File

@ -272,7 +272,7 @@ class Solution {
String str = numString[digits.charAt(num) - '0'];
for (int i = 0; i < str.length(); i++) {
temp.append(str.charAt(i));
//回溯
//c
backTracking(digits, numString, num + 1);
//剔除末尾的继续尝试
temp.deleteCharAt(temp.length() - 1);
@ -282,7 +282,25 @@ class Solution {
```
Python
```python3
class Solution:
def letterCombinations(self, digits: str) -> List[str]:
self.s = ""
res = []
letterMap = ["","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"]
if len(digits) == 0: return res
def backtrack(digits,index):
if index == len(digits):
return res.append(self.s)
digit = int(digits[index]) #将index指向的数字转为int
letters = letterMap[digit] #取数字对应的字符集
for i in range(len(letters)):
self.s += letters[i]
backtrack(digits,index + 1) #递归注意index+1一下层要处理下一个数字
self.s = self.s[:-1] #回溯
backtrack(digits,0)
return res
```
Go