今天主要学习了一下回溯算法,感觉理解上还是有一些难度
做了一道题并且学习了对应的剪枝操作!加油
class Solution:
def combine(self, n: int, k: int) -> List[List[int]]:
temp = []
result = []
def backtracking(n,k,i):
if len(temp) == k:
result.append(list(temp))
return
for j in range(i,n-(k-len(temp))+2):
temp.append(j)
backtracking(n,k,j+1)
temp.pop()
return result
backtracking(n,k,1)
return (result)