当前位置: 首页 > news >正文

LeetCode--46.全排列(回溯算法)

46.全排列

题目描述

给定一个不含重复数字的数组nums,返回其所有可能的全排列。你可以按任意顺序返回答案。

示例 1:

输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

示例 2:

输入:nums = [0,1] 输出:[[0,1],[1,0]]

示例 3:

输入:nums = [1] 输出:[[1]]

提示:

  • 1 <= nums.length <= 6
  • -10 <= nums[i] <= 10
  • nums中的所有整数互不相同

代码

classSolution{// 存放所有排列结果List<List<Integer>>result=newArrayList<>();// 当前路径(当前排列)List<Integer>path=newArrayList<>();/** * 回溯函数 * * @param nums 原数组 * @param used used[i] 表示 nums[i] 是否已经被使用 */publicvoidbacktracking(int[]nums,int[]used){/** * 终止条件 * * 当当前路径长度等于数组长度时, * 说明已经形成一个完整排列 */if(path.size()==nums.length){// 加入结果集result.add(newArrayList<>(path));return;}/** * 全排列: * 每一层都要从 0 开始遍历 * * 因为: * 每个位置都可以放任意未使用元素 */for(inti=0;i<nums.length;i++){/** * 如果当前元素没有被使用 */if(used[i]==0){// 做选择:加入当前元素path.add(nums[i]);// 标记当前元素已使用used[i]=1;// 递归下一层backtracking(nums,used);// 回溯:恢复现场// 当前元素恢复未使用状态used[i]=0;// 删除路径最后一个元素path.remove(path.size()-1);}}}publicList<List<Integer>>permute(int[]nums){/** * used数组: * * used[i] == 1 * 表示 nums[i] 已经在当前路径中 * * used[i] == 0 * 表示 nums[i] 还未使用 */int[]used=newint[nums.length];backtracking(nums,used);returnresult;}}
http://www.jsqmd.com/news/1029830/

相关文章:

  • 2026年众智商学院CPPM采购成本控制课程适合谁学?8800元费用包含考试费和教材费说明 - 众智商学院官方
  • 用ToothGrowth数据集讲透贝叶斯统计底层逻辑
  • 终极LOL换肤工具:5分钟快速上手国服免费皮肤修改方案
  • AI2 开源 olmOCR:7B 视觉模型把 PDF 变干净 Markdown,百万页不到 200 美元,olmOCR-Bench 82.4 分碾压 Mistral OCR
  • Windows飞行模式隐藏参数flightsettingsmaxpausedays:企业设备管理的精细化时间管控策略
  • Office Copilot实战指南:用Claude 3.5 Sonnet提升办公生产力
  • 上海电视维修避坑指南:5个常见陷阱+自检清单,帮你省下冤枉钱 - 简单到家
  • 面试官坏笑:“本周我们只要 Loop Engineering 不要 Prompt Engineering 了。”我:“不就是 /loop /goal,谁不会啊”
  • NXP GenAVB/TSN音频流控制与网络监控调试实战指南
  • 3步实现永久免费:Navicat试用期重置终极方案
  • 电视坏了是修还是换?5个判断标准帮你省下冤枉钱(附价格对比) - 简单到家
  • 曾推出畅销台式电脑的康懋达回归,新推屏蔽社交的翻盖手机 Callback 8020
  • VisualCppRedist AIO:Windows系统运行库的终极完整解决方案
  • 大件东西发什么物流便宜?2026最新省钱技巧+5折渠道推荐 - 生活情报姬
  • Raschka机器学习资源实战指南:从直觉建立到工业落地
  • 2026年泸州本地专业防水补漏维修口碑榜/泸州卫生间,地下室,阳台,飘窗,外墙漏水潮湿维修公司全维度测评(2026年防水最新深度行业资讯) - 防水快讯
  • 上海电视维修电话|怎么联系靠谱的上门维修 - 简单到家
  • 河源黄金回收避坑指南2026版:远离套路,认准中检认证源奢汇等靠谱门店 - 生活测评小能手
  • 从理论到实践:深入解析旋转矩阵、旋转向量、欧拉角与四元数的转换与应用
  • 一枚老戒指的上海五区回收之旅:百福、昌福、美昌、和信、和盛真实体验全录 - 昌福黄金回收
  • 强化学习落地五大硬核实战原则:从奖励设计到工业部署
  • 2026微信证件照小程序一寸证件照调成大一寸全流程攻略-尺寸转换原理与3款工具实操 - 像素测评
  • ZigBee ZCL集群开发实战:温控器UI与门锁集群详解
  • 从第五轮学科评估看东北大学资源与土木工程学院实力格局 - 品牌2026
  • 上海电视维修服务时长白皮书:基于运营数据的全流程时间分析 - 简单到家
  • 空调突然不制冷了别慌!我家的真实排查经历和维修避坑心得 - 简单到家
  • 东北大学资源与土木工程学院:国家级一流专业有哪些? - 品牌2026
  • 2026临沂兰山 兰陵 郯城黄金回收诚信推荐:这三家实体店,让你卖金不踩雷 - 钦扬网络
  • 华为MetaERP国资委语境下的 DRP(全域数字化资源管理平台/Digitalized Resource-management Platform)与传统 ERP(以 SAP、Oracle 为代表)的
  • 上海电视维修联系渠道与平台服务对比分析 - 简单到家