mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 16:54:50 +08:00
添加 0078.子集.md Java版本
This commit is contained in:
@ -177,7 +177,33 @@ public:
|
|||||||
|
|
||||||
|
|
||||||
Java:
|
Java:
|
||||||
|
```java
|
||||||
|
class Solution {
|
||||||
|
List<List<Integer>> result = new ArrayList<>();// 存放符合条件结果的集合
|
||||||
|
LinkedList<Integer> path = new LinkedList<>();// 用来存放符合条件结果
|
||||||
|
public List<List<Integer>> subsets(int[] nums) {
|
||||||
|
if (nums.length == 0){
|
||||||
|
result.add(new ArrayList<>());
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
Arrays.sort(nums);
|
||||||
|
subsetsHelper(nums, 0);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void subsetsHelper(int[] nums, int startIndex){
|
||||||
|
result.add(new ArrayList<>(path));//「遍历这个树的时候,把所有节点都记录下来,就是要求的子集集合」。
|
||||||
|
if (startIndex >= nums.length){ //终止条件可不加
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (int i = startIndex; i < nums.length; i++){
|
||||||
|
path.add(nums[i]);
|
||||||
|
subsetsHelper(nums, i + 1);
|
||||||
|
path.removeLast();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
Python:
|
Python:
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user