mapping =["","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"]classSolution:defletterCombinations(self, digits:str)-> List[str]:
n =len(digits)if n ==0:return[]
res =[]
path =[""]* n
defdfs(i):# 一个子问题的具体细节if i==n:
res.append("".join(path))returnfor c in mapping[int(digits[i])]:
path[i]= c
dfs(i+1)# 下一个子问题
dfs(0)return res
二、子集型回溯
2.1:78. 子集
代码:
classSolution:'''
站在输入的角度,每个数都可选或不选
最终每个叶子就是答案
'''defsubsets(self, nums: List[int])-> List[List[int]]:iflen(nums)==0:return[]
res =[]
path =[]
n =len(nums)defdfs(i):if i==n:
res.append(path.copy())return
dfs(i+1)# 不选
path.append(nums[i])# 选
dfs(i+1)
path.pop()# 记得恢复现场
dfs(0)return res
classSolution:"""
站在答案的角度,第一个数选谁,第二个数选谁,...
每个节点都是答案子集
"""defsubsets(self, nums: List[int])-> List[List[int]]:iflen(nums)==0:return[]
res =[]
path =[]
n =len(nums)defdfs(i):
res.append(path.copy())# 每个节点都直接添加if i==n:returnfor j inrange(i, n):
path.append(nums[j])# 下一个数选谁
dfs(j+1)
path.pop()# 记得恢复现场
dfs(0)return res
2.2:131. 分割回文串
代码:
classSolution:"""
站在答案的角度,第一个数选谁,第二个数选谁,...
每个节点都是答案
"""defpartition(self, s:str)-> List[List[str]]:
res =[]
path =[]
n =len(s)defdfs(i):if i==n:
res.append(path.copy())# 这里是答案包含全部字符,所以只有最后一把才记录结果returnfor j inrange(i, n):
t = s[i:j+1]if t==t[::-1]:
path.append(t)
dfs(j+1)
path.pop()
dfs(0)return res
前言: Ant Design Vue: 1.7.2 Vue2 less
问题描述: 在通过下拉框选择之后,在获取接口数据,第一列使用了fixed:left,就碰到了高度塌陷,查看元素的样式结果高度不一致,如&#x…