注意点&感悟:
- 我知道为什么,当初有些学霸说要复习了。
- 因为有的知识点,你一遍没学会,自然要重复学习。所为复习,就是再学一遍。
- 而简单的知识点,就不需要复习了,你已经明显知道自己掌握了,就不需要复习了。
- 而预习呢?是为了,让提前学一遍,更多的是针对那些上课时间有限,以及学生等不及的情况下,主动去预习。
- 预习更多的是为了充分利用上课时间,可以有针对性的听。(或者说,为了上课装逼,哈哈哈)
- ==============
- 说回来,复习挺好 的,能帮助你链接昨天的知识。
题目链接:17. 电话号码的字母组合
独立写的代码:
查看代码
class Solution:
def __init__(self):
self.letterMap=[
"",
"",
"abc",
"def",
"ghi",
"jkl",
"mno",
"pqrs",
"tuv",
"wxyz"
]
def letterCombinations(self, digits: str) -> List[str]:
# 补充个异常
if len(digits)==0:
return []
res = []
# index是独立集合的开始位置
self.backtracking(digits,0,[],res)
return res
...
def backtracking(self,digits,index,path,res):
if len(digits) == len(path):
res.append("".join(path[:]))
return
# 因为有多个集合
wight = self.letterMap[int(digits[index])]
for i in range(len(wight)): # 遍历abc
path.append(wight[i])
self.backtracking(digits,index+1,path,res)
path.pop()