Skip to content

Commit f9971fe

Browse files
committed
subsets
1 parent afb9eed commit f9971fe

File tree

4 files changed

+78
-6
lines changed

4 files changed

+78
-6
lines changed

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,3 +84,9 @@ Success is like pregnancy, Everybody congratulates you but nobody knows how many
8484
|114|[Flatten Binary Tree to Linked List](https://leetcode.com/problems/flatten-binary-tree-to-linked-list/#/solutions)| [Python [Yu]](./tree/Yu/114.py) | _O(N)_| _O(1)_ | Medium | |[公瑾讲解](https://youtu.be/LfKRZ_qCmYQ)|
8585
|230|[Kth Smallest Element in a BST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/#/description)| [Python [Yu]](./tree/Yu/230.py) | _O(N)_| _O(1)_ | Medium | |[公瑾讲解](https://youtu.be/CfNRc82ighw)|
8686
|582|[Kill Process](https://leetcode.com/problems/kill-process/#/description)| [Python [Yu]](./tree/Yu/582.py) | _O(N)_| _O(N)_ | Medium | |[公瑾讲解](https://youtu.be/fKR1n35Sj8s)|
87+
88+
89+
## Backtrack Medium
90+
| # | Title | Solution | Time | Space | Difficulty |Tag| Note|
91+
|-----|-------| -------- | ---- | ------|------------|---|-----|
92+
|78|[Subsets](https://leetcode.com/problems/subsets/#/description)| [Python [Yu]](./backtrack/Yu/78.py) | _O(N*(2^N))_| _O(2^N)_ | Medium | |[公瑾讲解](https://youtu.be/Az3PfUep7gk)|

backtrack/Yu/78.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Yu Zhou
2+
# 78. Subsets
3+
# Given a set of distinct integers, nums, return all possible subsets.
4+
# Note: The solution set must not contain duplicate subsets.
5+
6+
# If nums = [1,2,3], a solution is:
7+
8+
# [
9+
# [3],
10+
# [1],
11+
# [2],
12+
# [1,2,3],
13+
# [1,3],
14+
# [2,3],
15+
# [1,2],
16+
# []
17+
# ]
18+
19+
class Solution(object):
20+
def subsets(self, nums):
21+
"""
22+
:type nums: List[int]
23+
:rtype: List[List[int]]
24+
"""
25+
self.res = []
26+
def dfs(nums, temp, i):
27+
self.res.append(temp[:])
28+
for i in xrange(i, len(nums)):
29+
temp.append(nums[i])
30+
dfs(nums, temp, i + 1)
31+
temp.pop()
32+
dfs(nums, [], 0)
33+
return self.res

tree/Yu/78.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Yu Zhou
2+
# 78. Subsets
3+
# Given a set of distinct integers, nums, return all possible subsets.
4+
# Note: The solution set must not contain duplicate subsets.
5+
6+
# If nums = [1,2,3], a solution is:
7+
8+
# [
9+
# [3],
10+
# [1],
11+
# [2],
12+
# [1,2,3],
13+
# [1,3],
14+
# [2,3],
15+
# [1,2],
16+
# []
17+
# ]
18+
19+
class Solution(object):
20+
def subsets(self, nums):
21+
"""
22+
:type nums: List[int]
23+
:rtype: List[List[int]]
24+
"""
25+
self.res = []
26+
def dfs(nums, temp, i):
27+
self.res.append(temp[:])
28+
for i in xrange(i, len(nums)):
29+
temp.append(nums[i])
30+
dfs(nums, temp, i + 1)
31+
temp.pop()
32+
dfs(nums, [], 0)
33+
return self.res

tree/Yu/try.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
def traversal(root):
2-
if not root:
3-
return None
4-
print root.val
5-
traversal(root.left)
6-
traversal(root.right)
1+
arr1 = [3]
2+
arr2 = [5]
3+
res = arr1 + arr2
4+
arr2.pop()
5+
6+
print res

0 commit comments

Comments
 (0)