Permutations II

发布时间:2016-12-6 22:23:02 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"Permutations II",主要涉及到Permutations II方面的内容,对于Permutations II感兴趣的同学可以参考一下。

//space maybe use a lot public ArrayList<ArrayList<Integer>> permuteUnique(int[] num) { // Start typing your Java solution below // DO NOT write main() function ArrayList<ArrayList<Integer>> result = new ArrayList<ArrayList<Integer>>(); if(num.length == 0) return result; ArrayList<Integer> first = new ArrayList<Integer>(); first.add(num[0]); result.add(first); Set<ArrayList<Integer>> set = new HashSet<ArrayList<Integer>>(); set.add(first); for(int i = 1; i < num.length; i++) { int size = result.size(); ArrayList<ArrayList<Integer>> tmp = new ArrayList<ArrayList<Integer>>(); for(int j = 0; j < size; j++) { for(int k = 0; k <= i; k++){ ArrayList<Integer> sub = new ArrayList<Integer>(); sub.addAll(result.get(j)); sub.add(k, num[i]); if(!set.contains(sub)) { tmp.add(sub); set.add(sub); } } } result = tmp; } return result; }

上一篇:Java对象的生命周期
下一篇:写一个函数,计算0到n之间2的个数

相关文章

关键词: Permutations II

相关评论