题目:
解析:
代码:
//用于返回最后的结果private List<List<Integer>> ret;//记录决策树元素的路径private List<Integer> path;//标记决策树元素,元素没有被使用为默认falseprivate boolean[] check;public List<List<Integer>> permute(int[] nums) {ret = new ArrayList<>();path = new ArrayList<>();check = new boolean[nums.length];dfs(nums);return ret;}private void dfs(int[] nums){//递归出口if(path.size() == nums.length) {ret.add(new ArrayList<>(path));return;}for(int i = 0; i < nums.length; i++){//决策树的元素没有被选,就加入pathif(check[i] == false){path.add(nums[i]);//记录路径check[i] = true;//被使用过就设置为falsedfs(nums);//回溯:把path最后一个元素删除path.remove(path.size()-1);//剪枝:把元素标志位还原check[i] = false;}}}
穷举vs暴搜vs深搜vs回溯vs剪枝专题一>全排列
2024/12/22 2:24:32
来源:https://blog.csdn.net/robin_suli/article/details/144435392
浏览:
次
关键词:穷举vs暴搜vs深搜vs回溯vs剪枝专题一>全排列
版权声明:
本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。
我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com
热文排行
- 本周后半段,北方将遭今春首场沙尘天气
- 2024年全国青少年信息素养python编程复赛真题+答案
- 编程-设计模式 6:适配器模式
- 如何利用大数据技术来识别和预防网络赌博行为?
- LLMs之Llama 3.1:Llama 3.1的简介、安装和使用方法、案例应用之详细攻略
- JVM:SpringBoot TomcatEmbeddedWebappClassLoader
- No module named ‘tvtk.custom.light‘ mayavi
- 解决 Ubuntu 系统中 “Temporary Failure in Name Resolution“ 错误
- YOLOv10有效涨点专栏目录
- 记录一下 Chrome浏览器打印时崩溃问题