leetcode104:permutations
Posted 滚雪球效应
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode104:permutations相关的知识,希望对你有一定的参考价值。
题目描述
给出一组数字,返回该组数字的所有排列
例如:
[1,2,3]的所有排列如下
[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2], [3,2,1].
(以数字在数组中的位置靠前为优先级,按字典序排列输出。)
[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2], [3,2,1].
(以数字在数组中的位置靠前为优先级,按字典序排列输出。)
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].
[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].
(Take the more front position of the number in the array as the priority, and arrange the output in dictionary order.)
class Solution {
public:
vector<vector<int> > permute(vector<int> &num) {
//next_permutation:会取得[first,last]所标识之序列的下一个排序组合
//如果没有下一个排列组合,便返回false,否则返回true
vector <vector<int>> res;
sort(num.begin(),num.end());
do {
res.push_back(num);
}while (next_permutation(num.begin(), num.end()));
return res;
}
};
public:
vector<vector<int> > permute(vector<int> &num) {
//next_permutation:会取得[first,last]所标识之序列的下一个排序组合
//如果没有下一个排列组合,便返回false,否则返回true
vector <vector<int>> res;
sort(num.begin(),num.end());
do {
res.push_back(num);
}while (next_permutation(num.begin(), num.end()));
return res;
}
};
以上是关于leetcode104:permutations的主要内容,如果未能解决你的问题,请参考以下文章