博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Permutations II
阅读量:6428 次
发布时间:2019-06-23

本文共 938 字,大约阅读时间需要 3 分钟。

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].

class Solution {public:    void _swap (int &a, int &b) {        int tmp = a;        a = b;        b = tmp;    }    bool exist(vector
& nums, int num, int start, int end) { int i = 0; for (i=start; i
> &res, vector
& nums, int start, int end) { if (start >= end) { res.push_back(nums); return; } int i; for (i=start; i<=end; i++) { if (exist(nums, nums[i], start, i)) { continue; } _swap(nums[start], nums[i]); _permute(res, nums, start+1, end); _swap(nums[start], nums[i]); } } vector
> permuteUnique(vector
& nums) { sort(nums.begin(), nums.end()); vector
> res; int start = 0; int end = nums.size() - 1; _permute(res, nums, start ,end); return res; }};

 

转载于:https://www.cnblogs.com/SpeakSoftlyLove/p/5184768.html

你可能感兴趣的文章
paper 40 :鲁棒性robust
查看>>
做一个会使用PS的前端开发
查看>>
优化MySchool数据库(事务、视图、索引)
查看>>
硬件开发之pcb---PCB抗干扰设计原则
查看>>
关于字符串循环遍历的两种方法
查看>>
使用笔记:TF辅助工具--tensorflow slim(TF-Slim)
查看>>
CCF-NOIP-2018 提高组(复赛) 模拟试题(一)
查看>>
大话设计模式读书笔记3——单例模式
查看>>
Java多线程之ReentrantLock与Condition
查看>>
实验三
查看>>
Vue 项目构建
查看>>
[Ruby on Rails系列]2、开发环境准备:Ruby on Rails开发环境配置
查看>>
在反射中如何调用类中的Setter()AndGetter()方法
查看>>
android studio adb
查看>>
框架源码系列二:手写Spring-IOC和Spring-DI(IOC分析、IOC设计实现、DI分析、DI实现)...
查看>>
asp.net编译 懒人脚本
查看>>
二分答案经典入门题:)
查看>>
为什么你需要将代码迁移到ASP.NET Core 2.0?
查看>>
思杰的雄心——软件定义的工作空间
查看>>
Servlet的多线程和线程安全
查看>>