Skip to content

Commit 7d315a0

Browse files
committed
作业提交
1 parent e499e71 commit 7d315a0

3 files changed

Lines changed: 35 additions & 1 deletion

File tree

Week03/NOTE.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,7 @@
1-
学习笔记
1+
回溯算法:
2+
回溯算法实际上就是一个决策树的遍历过程。
3+
步骤为
4+
第一步:重复内容(即为递归函数)
5+
第二步:条件选择 满足条件时执行递归函数
6+
第三步:结束条件 结束递归的条件
7+

Week03/detail.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
class Solution:
2+
def combine(self, n: int, k: int) -> List[List[int]]:
3+
if n <= 0 or k <= 0 or k > n:
4+
return []
5+
res = []
6+
self.DFS( 1, k, n, [], res)
7+
return res
8+
9+
def DFS(self,start, k, n, pre, res):
10+
if len(pre) == k :
11+
res.append(pre[:])
12+
return
13+
14+
for i in range(start, n+1):
15+
pre.append(i)
16+
self.DFS(i+1,k,n,pre,res)
17+
pre.pop()

Week03/permutations.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
class Solution:
2+
def permute(self, nums: List[int]) -> List[List[int]]:
3+
res=[]
4+
def back(nums,tmp):
5+
if not nums:
6+
res.append(tmp)
7+
return []
8+
for i in range(len(nums)):
9+
back(nums[:i]+nums[i+1:],tmp+[nums[i]])
10+
back(nums,[])
11+
return res

0 commit comments

Comments
 (0)