lintcode-15-全排列
2017-06-11 18:50
357 查看
全排列
给定一个数字列表,返回其所有可能的排列。
注意事项
你可以假设没有重复数字。样例
给出一个列表[1,2,3],其全排列为:[
[1,2,3],
[1,3,2],
[2,1,3],
[2,3,1],
[3,1,2],
[3,2,1]
]
挑战
使用递归和非递归分别解决。标签
领英 递归code
class Solution { public: /** * @param nums: A list of integers. * @return: A list of permutations. */ vector<vector<int> > permute(vector<int> nums) { // write your code here vector<vector<int> > result; int size = nums.size(); if(size == 0) { result.push_back(nums); return result; } permute(nums, 0, size, result); return result; } void permute(vector<int> &nums, int begin, int end, vector<vector<int> > &result) { if(begin == end) result.push_back(nums); else { for(int i=begin; i<end; i++) { int temp = nums[i]; nums[i] = nums[begin]; nums[begin] = temp; permute(nums, begin+1, end, result); temp = nums[i]; nums[i] = nums[begin]; nums[begin] = temp; } } } };
相关文章推荐
- lintcode--15. 全排列
- lintcode 求全排列(15)
- LintCode 15-全排列 16-带重复元素的全排列
- LintCode 15 全排列
- LintCode 15.全排列 python 解法
- Lintcode 15. 全排列
- 下一个排列-lintcode
- LintCode之排列序号
- LintCode-下一个排列
- [LintCode 197] 排列序号(Python)
- Lintcode 下一个排列
- **[Lintcode]Permutation Sequence 第k个排列
- lintcode(16)带重复元素的排列
- lintcode-16-带重复元素的排列
- Lintcode 排列序号
- lintcode,字符串全排列
- 紫书例题 10-15 杆子的排列 UVa1638
- 排列序号-LintCode
- python_lintcode_简单题_8旋转字符_420报数_197排列序号
- 下一个排列-LintCode