LeetCode-46-Permutations(DFS)-Medium
2016-01-10 14:27
375 查看
题意理解:
给定vector,其中的元素均为唯一的,求解vector中元素所有的排列方式;
题目分析:
典型的DFS
解题代码:
给定vector,其中的元素均为唯一的,求解vector中元素所有的排列方式;
题目分析:
典型的DFS
解题代码:
class Solution { private: vector<vector<int>> ans; void dfs(vector<int> &preAns, vector<int> &subNums){ if(subNums.size()==0){ ans.push_back(preAns); return; } int size=subNums.size(); for(int i=0; i<size; i++){ int n=subNums[i]; vector<int> tPreAns(preAns); tPreAns.push_back(n); vector<int> tSubNums(subNums); tSubNums.erase(find(tSubNums.begin(), tSubNums.end(),n)); dfs(tPreAns, tSubNums); } } public: vector<vector<int>> permute(vector<int>& nums) { vector<int> pre; dfs(pre, nums); return ans; } };
相关文章推荐
- 《梦断代码》摘录及感悟
- 【CSS3】CSS3 滤镜实现
- 通过js写的一个比较简单的点击切换图片效果
- 工作中一点心理技巧、提升效率
- Java后台开发(2)——JVM参数设置和分析
- web前端开发笔记
- 知乎接口
- 158_弹性碰撞 Physics Experiment (POJ No 3684)
- 【架构】架构没你想的那么难之三层架构
- java28.XML操作------DOM方式解析XML数据
- (Beta)Let's-Beta阶段展示博客
- C语言,从升序方幂数列中求得具体项数的值的解法
- RHCE 学习笔记(4)- 重定向,管道和VIM编辑器
- 关于cuda kernel能否调用printf()函数
- 【c语言】 单链表
- 云主机 安装 自己的系统 免费使用更大的硬盘空间
- iOS开发实践之多线程(GCD)
- Linux ->> <user_name> not in the sudoers file. This incident will be reported.
- 2016.01.10 论文扩充、精修、查重
- ADO.NET之command添加数据