穷举vs暴搜vs深搜vs回溯vs剪枝专题一>全排列

ops/2024/12/19 5:57:28/

题目: 

 


解析: 

 


代码: 

//用于返回最后的结果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;}}}

http://www.ppmy.cn/ops/143096.html

相关文章

ThinkRAG开源!笔记本电脑可运行的本地知识库大模型检索增强生成系统

ThinkRAG 大模型检索增强生成系统&#xff0c;可以轻松部署在笔记本电脑上&#xff0c;实现本地知识库智能问答。 该系统基于 LlamaIndex 和 Streamlit 构建&#xff0c;针对国内用户在模型选择、文本处理等诸多领域进行了优化。 1. 项目地址 ThinkRAG 在Github开源&#xf…

安防监控Liveweb视频汇聚融合平台助力执法记录仪高效使用

Liveweb平台可接入的设备除了常见的智能分析网关与摄像头以外 &#xff0c;还可通过GB28181协议接入执法记录仪&#xff0c;实现对执法过程的全程监控与录像&#xff0c;并对执法轨迹与路径进行调阅回看。那么&#xff0c;如何做到执法记录仪高效使用呢&#xff1f; 由于执法记…

crapy 爬虫框架的使用

1.scrapy框架安装 安装前先安装python3和pycharm 社区版 执行命令安装scrapy&#xff0c; pip install scrapy 2.创建项目 执行命令&#xff1a; scrapy startproject test_spider 如图&#xff1a; 3.使用pycharm大开项目并设置pipenv虚拟机环境 虚拟环境是为了依赖隔…

QT编译opencv

一.QT5.12编译 1.QT环境 QT5.12 Qt Creator 12.0.2 2.OpenCV文件 因为QT5.12版本qt最后支持到2021.12月&#xff0c;所以这里选择的opencv版本为2021.4月发布的opencv-3.4.16版本 官网下载地址&#xff1a;https://opencv.org/releases/ 最新版本&#xff1a;opencv-3.4.16.…

什么是正则化?Regularization: The Stabilizer of Machine Learning Models(中英双语)

正则化&#xff1a;机器学习模型的稳定器 1. 什么是正则化&#xff1f; 正则化&#xff08;Regularization&#xff09;是一种在机器学习模型训练中&#xff0c;通过约束模型复杂性以防止过拟合的技术。 它的核心目标是让模型不仅在训练集上表现良好&#xff0c;还能在测试集上…

Eureka学习笔记-服务端

Eureka学习笔记 服务端 模块设计 Resources &#xff1a;这部分对外暴露了一系列的 Restful 接口。Eureka Client 的注册、心跳、获取服务列表等操作都需要调用这些接口。另外&#xff0c;其他的 Server 在同步 Registry 时也需要调用这些接口。Controller &#xff1a;这里提…

学习日志024--opencv中处理轮廓的函数

目录 前言​​​​​​​ 一、 梯度处理的sobel算子函数 功能 参数 返回值 代码演示 二、梯度处理拉普拉斯算子 功能 参数 返回值 代码演示 三、Canny算子 功能 参数 返回值 代码演示 四、findContours函数与drawContours函数 功能 参数 返回值 代码演示 …

知乎 PB 级别 TiDB 数据库集群管控实践

以下文章来源于知乎技术专栏 &#xff0c;作者代晓磊 导读 在现代企业中&#xff0c;数据库的运维管理至关重要&#xff0c;特别是面对分布式数据库的复杂性和大规模集群的挑战。作为一款兼容 MySQL 协议的分布式关系型数据库&#xff0c;TiDB 在高可用、高扩展性和强一致性方…