public class Solution { public List<List<int>> Subsets(int[] nums) { List<List<int>> result=new List<List<int>>(); if(nums==null||nums.Length==0) { return result; } List<int> list=new List<int>(); Array.Sort(nums); subsetHelper(result,list,nums,0); return result; } public void subsetHelper(List<List<int>> result, List<int> list, int[] nums,int pos) { result.Add(new List<int>(list)); for(int i=pos;i<nums.Length;i++) { list.Add(nums[i]); subsetHelper(result,list,nums,i+1); list.RemoveAt(list.Count-1); } } }
联系客服