leetcode Permutations
2015-10-14 19:48
260 查看
题目链接
思路:
递归回溯。典型应用
思路:
递归回溯。典型应用
public class Solution { int n; List<List<Integer>> result; List<Integer> temp; boolean isUsed[]; int[]nums; public List<List<Integer>> permute(int[] nums) { n=nums.length; isUsed=new boolean ; temp=new LinkedList<Integer>(); result=new LinkedList<List<Integer>>(); this.nums=nums; help(0); return result; } public void help(int step) { if(step==n) { result.add(new LinkedList<Integer>(temp)); return; } for(int i= 0;i<n;i++) { if(!isUsed[i]) { isUsed[i]=true; temp.add(nums[i]); help(step+1); isUsed[i]=false; temp.remove(temp.size()-1); } } } }
相关文章推荐
- 移动web开发经验总结(1)
- CALayer的position,anchorPoint属性 与UIView的frame 属性
- Android开发手记(7) 按钮类控件的使用
- 程序员眼中的统计学(3)】概率计算:把握机会
- 信息系统项目管理师-战略管理知识点
- [TwistedFate]二维数组,字符串数组,多维数组
- NSURLConnection 与 NSURLSession
- OC语言---封装,继承,多态
- mac基本命令
- 信息系统项目管理师-配置管理知识点
- 信息系统项目管理师-组织级项目管理与大型项目管理知识点
- Fiddler 扩展编程 ——1
- C++动态链接库DLL-非MFC动态库
- NEGOUT: SUBSTITUTE FOR MAXOUT UNITS
- IT研发测试类笔试(第一篇
- 面试题——TCP和UDP区别
- 信息系统项目管理师-项目需求管理知识点
- 使用Faric+Git进行分布式代码管理
- Cocos2dx之为什么会有自动回收池
- OC工厂类