78. Subsets

来源:互联网 发布:淘宝注册店铺单能做吗 编辑:程序博客网 时间:2024/05/21 09:36

Given a set of distinct integers, nums, return all possible subsets.

Note:

  • Elements in a subset must be in non-descending order.
  • The solution set must not contain duplicate subsets.

For example,
If nums = [1,2,3], a solution is:

[  [3],  [1],  [2],  [1,2,3],  [1,3],  [2,3],  [1,2],  []]

Subscribe to see which companies asked this question

public class Solution {    void dfs(int [] number_array, int start, int number, List<Integer> array, List<List<Integer>> result) {        if(number==array.size()) {            result.add(new ArrayList<Integer>(array));            return;        }        for(int i=start;i<number_array.length;i++) {            array.add(number_array[i]);            dfs(number_array,i+1,number,array,result);            array.remove(array.size()-1);        }    }    public List<List<Integer>> subsets(int[] S) {          List<List<Integer>> result = new ArrayList<List<Integer>>();          List<Integer> array = new ArrayList<Integer>();          result.add(array);          if(S==null) {              return result;          }          Arrays.sort(S);          for(int i=1;i<=S.length;i++) {              array.clear();              dfs(S,0,i,array,result);          }          return result;    }}

0 0
原创粉丝点击