Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 0df748c

Browse files
Merge branch 'master' of github.com:youngyangyang04/leetcode-master
2 parents b396e64 + 63e81f5 commit 0df748c

File tree

2 files changed

+38
-16
lines changed

2 files changed

+38
-16
lines changed

problems/0216.组合总和III.md

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -301,22 +301,29 @@ class Solution {
301301

302302
```py
303303
class Solution:
304-
def combinationSum3(self, k: int, n: int) -> List[List[int]]:
305-
res = [] #存放结果集
306-
path = [] #符合条件的结果
307-
def findallPath(n,k,sum,startIndex):
308-
if sum > n: return #剪枝操作
309-
if sum == n and len(path) == k: #如果path.size() == k 但sum != n 直接返回
310-
return res.append(path[:])
311-
for i in range(startIndex,9-(k-len(path))+2): #剪枝操作
312-
path.append(i)
313-
sum += i
314-
findallPath(n,k,sum,i+1) #注意i+1调整startIndex
315-
sum -= i #回溯
316-
path.pop() #回溯
317-
318-
findallPath(n,k,0,1)
319-
return res
304+
def __init__(self):
305+
self.res = []
306+
self.sum_now = 0
307+
self.path = []
308+
309+
def combinationSum3(self, k: int, n: int) -> [[int]]:
310+
self.backtracking(k, n, 1)
311+
return self.res
312+
313+
def backtracking(self, k: int, n: int, start_num: int):
314+
if self.sum_now > n: # 剪枝
315+
return
316+
if len(self.path) == k: # len(path)==k时不管sum是否等于n都会返回
317+
if self.sum_now == n:
318+
self.res.append(self.path[:])
319+
return
320+
for i in range(start_num, 10 - (k - len(self.path)) + 1):
321+
self.path.append(i)
322+
self.sum_now += i
323+
self.backtracking(k, n, i + 1)
324+
self.path.pop()
325+
self.sum_now -= i
326+
return
320327
```
321328

322329
## Go:

problems/二叉树理论基础.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,21 @@ function TreeNode(val, left, right) {
227227
}
228228
```
229229

230+
Swift:
231+
```Swift
232+
class TreeNode<T> {
233+
var value: T
234+
var left: TreeNode?
235+
var right: TreeNode?
236+
init(_ value: T,
237+
left: TreeNode? = nil,
238+
right: TreeNode? = nil) {
239+
self.value = value
240+
self.left = left
241+
self.right = right
242+
}
243+
}
244+
```
230245

231246
-----------------------
232247
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>

0 commit comments

Comments
 (0)