Permutations
来源:互联网 发布:ahc官网扫码软件 编辑:程序博客网 时间:2024/06/11 22:53
Permutations
Given a collection of numbers, return all possible permutations.
For example,[1,2,3]
have the following permutations:[1,2,3]
, [1,3,2]
, [2,1,3]
, [2,3,1]
, [3,1,2]
, and [3,2,1]
.
思路:运用递归求解,第一位和后面的每一位替换,递归到最后一位。
class Solution {public: void permutation(vector<vector<int>> &ret, vector<int> &nums,int pStr,int pbegin) { if(pbegin == nums.size()) ret.push_back(nums); else { for(int i = pbegin;i < nums.size();++i) { int tmp = nums[pbegin]; nums[pbegin] = nums[i]; nums[i] = tmp; permutation(ret,nums,pStr,pbegin+1); tmp = nums[pbegin]; nums[pbegin] = nums[i]; nums[i] = tmp; } } } vector<vector<int>> permute(vector<int>& nums) { vector<vector<int>> ret; if(0 == nums.size()) return ret; permutation(ret,nums,0,0); return ret; }};
0 0
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- MongoDB与Elasticsearch达到数据同步的一点尝试
- 深入分析Java线程中断机制
- 士兵杀敌(一)
- 二叉树的基本操作
- HDU 5338 ZZX and Permutations 线段树
- Permutations
- 机试算法讲解: 第39题 DAG之QQ师徒关系
- 【Swift】学习笔记(八)——类和结构体
- 数据块的操作 DataChunk
- JavaScript中的枚举类型
- ubuntu 常用命令大全
- UVa 232 Crossword Answers
- 黑马程序员——多线程知识总结1
- C语言-自定义函数,及其调用;函数返回值类型的自动转换,即其数量;