@@ -0,0 +1,881 @@
+import java.util.*;%0A%0A/**%0A * Created by Liuxz on 2017/5/10.%0A */%0Apublic class Leet78Subsets %7B%0A    int sum;%0A    int%5B%5D nums;%0A    public List%3CList%3CInteger%3E%3E subsets(int%5B%5D nums) %7B%0A        this.sum = nums.length;%0A        this.nums = nums;%0A        Set%3CList%3CInteger%3E%3E result = new HashSet%3C%3E();%0A        loop(result, new LinkedList%3C%3E(), this.sum, 0);%0A        return new ArrayList%3C%3E(result);%0A    %7D%0A%0A    private void loop(Set%3CList%3CInteger%3E%3E result, List%3CInteger%3Eper, int least, int n )%7B%0A        if(least %3E= 0)%7Bresult.add(new ArrayList%3C%3E(per));%7Delse%7Breturn;%7D%0A        for (int i = n; i %3C this.sum ; i ++)%7B%0A            per.add(this.nums%5Bi%5D);%0A            loop(result,per,least-1,i+1);%0A            per.remove(per.size()-1);%0A        %7D%0A    %7D%0A%0A    public static void main(String%5B%5D args)%7B%0A        Leet78Subsets xx = new Leet78Subsets();%0A        System.out.println(xx.subsets(new int%5B%5D%7B1,2,3%7D));%0A    %7D%0A%7D%0A

complete 78