Permutations II
来源:互联网 发布:mac版电脑能下淘宝 编辑:程序博客网 时间:2024/06/05 03:20
Given a collection of numbers that might contain duplicates, return all possible unique permutations.
For example,[1,1,2]
have the following unique permutations:[1,1,2]
, [1,2,1]
, and [2,1,1]
.
public class Solution { public List<List<Integer>> permuteUnique(int[] num) { List<List<Integer>> res=new ArrayList< List<Integer>>(); if(num==null) return res; getPermute(res,num,0); HashSet set=new HashSet(res); res.clear(); res.addAll(set); return res; } public void getPermute(List<List<Integer>> res,int[] num,int begin){ if(begin==num.length){ ArrayList<Integer> a=new ArrayList<Integer>(); for(int i=0;i<num.length;i++){ a.add(num[i]); } res.add(a); } for(int i=begin;i<num.length;i++){ if(i>begin && num[i]==num[begin]) continue; swap(num,i,begin); getPermute(res,num,begin+1); swap(num,i,begin); } } public void swap(int[] num,int a,int b){ int tmp=num[a]; num[a]=num[b]; num[b]=tmp; }}思路:先求出全部的,再删除重复的。
0 0
- 【LeetCode】Permutations && Permutations II
- leetcode: Permutations/Permutations II
- leetcode Permutations & Permutations II
- [Leetcode]Permutations && Permutations II
- Permutations and Permutations II
- Permutations && Permutations ii
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- Permutations II
- java AES加密拿来即用,实行对汉字的转化
- [UIDevice currentDevice].model
- 使用C语言判断栈的方向
- POJ1151-Atlantis
- MEF程序设计指南七:使用目录(Catalog)动态装载xap与目录筛选(Filtered Catalog)
- Permutations II
- 韩顺平老师亲临成都 PHP基础班火爆开班
- 关于SVM的一些理解
- numpy中的tile函数
- 如何在Windows平台下安装Memcached
- 彻底解决Android GPS没法定位这一顽固问题
- 浅谈Android五大布局(一)——LinearLayout、FrameLayout和AbsoulteLayout
- C++ BSS段、数据段、代码段、堆与栈及五大内存分区
- 费和发帖华妃体警方已花非花风环境和非国有解放公园