week_11_ Permutations
来源:互联网 发布:电磁炉 知乎 编辑:程序博客网 时间:2024/06/07 18:14
Description
Given a collection of distinct 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], [3,2,1]]
Solution
结合vector数据结构的特性,递归遍历组合即可。
代码实现如下:
class Solution {public: vector<vector<int> > permute(vector<int> &num) { vector<vector<int> > result; permuteRecursive(num, 0, result); return result; } void permuteRecursive(vector<int> &num, int begin, vector<vector<int> > &result){if (begin >= num.size()) { result.push_back(num); return;}for (int i = begin; i < num.size(); i++) { swap(num[begin], num[i]); permuteRecursive(num, begin + 1, result); swap(num[begin], num[i]);} }};
阅读全文
0 0
- week_11_ Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Permutations
- Windows10 U盘安装Ubuntu 16.04教程
- ros下diy手臂rviz演示抓取放置
- Objective-C Runtime 运行时(4)
- EVE-NG升级后提示WARNING:neither Intel VT-x or AMD-V found
- c作业题12.06
- week_11_ Permutations
- 748. Shortest Completing Word
- java设计模式之建造者模式
- 抽象类和接口的区别
- Partition to K Equal Sum Subsets
- 数据结构实验之查找三:树的种类统计
- Java中那些晦涩难懂的名词(不定时更新)
- 4、构建 Instrumented 单元测试
- leetcode 347[medium]--Top K Frequent Elements