• Subsets

Subsets

Given a set of distinct integers, nums, return all possible subsets.
Note: The solution set must not contain duplicate subsets.
For example,
If nums = [1,2,3], a solution is:
1. [
2. [3],
3. [1],
4. [2],
5. [1,2,3],
6. [1,3],
7. [2,3],
8. [1,2],
9. []
10. ]

Solution:
1. public class Solution {
2. public List<List> subsets(int[] nums) {
3. List<List> res = new ArrayList<List>();
4. res.add(new ArrayList());
5. 6. Arrays.sort(nums);
7. 8. for (int i = 0; i < nums.length; i++) {
9. int size = res.size();
10. 11. for (int j = 0; j < size; j++) {
12. List sol = new ArrayList(res.get(j));
13. sol.add(nums[i]);
14. res.add(sol);
15. }
16. }
17. 18. return res;
19. }
20. }