直接遍历,将当前字符加到每一个已有的子集中形成新的子集,直到遍历完成即可得到所有的子集。
class Solution { public List<List<Integer>> subsets(int[] nums) { List<List<Integer>> res = new ArrayList<>(); res.add(new ArrayList<>()); for(int i = 0; i < nums.length; i++){ int len = res.size(); for(int j = 0; j < len; j++){ List<Integer> temp = new ArrayList<>(res.get(j)); temp.add(nums[i]); res.add(temp); } } return res; } }