尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
LeetCode--90.子集II(回溯算法)
90.子集II题目描述给你一个整数数组nums其中可能包含重复元素请你返回该数组所有可能的 子集幂集。解集不能包含重复的子集。返回的解集中子集可以按任意顺序排列。示例 1输入nums [1,2,2] 输出[[],[1],[1,2],[1,2,2],[2],[2,2]]示例 2输入nums [0] 输出[[],[0]]提示1 nums.length 10-10 nums[i] 10代码classSolution{// 存放最终结果ListListIntegerresultnewArrayList();// 当前路径当前子集ListIntegerpathnewLinkedList();/** * 回溯函数 * * param nums 排序后的数组 * param startIndex 本层递归开始的位置 * param used 记录当前路径中哪些元素被使用过 */publicvoidbacktracking(int[]nums,intstartIndex,int[]used){// 每到一个节点都把当前路径加入结果result.add(newLinkedList(path));// 横向遍历同一树层for(intistartIndex;inums.length;i){/** * 树层去重核心 * * nums[i] nums[i - 1] * 说明当前元素和前一个元素相同 * * used[i - 1] 0 * 说明前一个元素已经回溯结束 * 即 * 前一个元素和当前元素处于同一树层 * * 同一层中相同元素只取第一个 */if(istartIndexnums[i-1]nums[i]used[i-1]0){continue;}// 做选择path.add(nums[i]);// 标记当前元素已使用进入树枝used[i]1;// 递归下一层backtracking(nums,i1,used);// 回溯撤销选择used[i]0;// 删除当前路径最后一个元素path.removeLast();}}publicListListIntegersubsetsWithDup(int[]nums){// 必须先排序// 这样相同元素才会相邻才能进行去重Arrays.sort(nums);// used数组// 1 表示当前元素在当前路径中// 0 表示当前元素不在当前路径中int[]usednewint[nums.length];backtracking(nums,0,used);returnresult;}}
RELATED

相关推荐

为什么NSC_BUILDER是你的Switch游戏管理终极解决方案

为什么NSC_BUILDER是你的Switch游戏管理终极解决方案

为什么NSC_BUILDER是你的Switch游戏管理终极解决方案 【免费下载链接】NSC_BUILDER Nintendo Switch Cleaner and Builder. A batchfile, python and html script based in hacbuild and Nuts python libraries. Designed initially to erase titlerights encryption from nsp …

📅 2026/9/21 3:42:43
从零开始:编写第一个鸿蒙(HarmonyOS)程序

从零开始:编写第一个鸿蒙(HarmonyOS)程序

文章目录一、引言二、动手编写:Hello HarmonyOS三、代码解析:每一行都是什么意思?3.1 Entry3.2 Component3.3 struct3.4 Index3.5 build() 函数3.6 Text 组件四、总结一、引言 对于刚接触鸿蒙(HarmonyOS)开发的朋友来…

📅 2026/9/21 3:44:08
OEE设备综合效率分析——半导体FAB的「利润放大镜」完整指南

OEE设备综合效率分析——半导体FAB的「利润放大镜」完整指南

在半导体制造中,设备是FAB(晶圆厂)最昂贵的资产。一台光刻机动辄数千万美元,一条产线上的设备投资可能超过百亿人民币。如何量化设备的利用效率?如何找到效率损失的根因?OEE(Overall Equipment …

📅 2026/9/19 20:11:38
MORE NEWS

更多资讯

📰

UIkit快速开始教程:CDN、npm、pnpm五种安装方式与第一个响应式页面

UIkit快速开始教程:CDN、npm、pnpm五种安装方式与第一个响应式页面 【免费下载链接】uikit A lightweight and modular front-end framework for developing fast and powerful web interfaces 项目地址: https://gitcode.com/gh_mirrors/ui/uikit UIkit 是一…

📰

Vercel CLI 告警规则:`vc alerts rules schema` 与内置/自定义告警规则创建实战指南

CLI后端云原生 【免费下载链接】vercel Develop. Preview. Ship. 项目地址: https://gitcode.com/gh_mirrors/ve/vercel 点击查看 免费下载 导读 本文基于 Vercel CLI(本仓库 packages/cli)中新增的 alerts rules schema 命令及其配套的规则…

📰

TDengine 接入 GE CSS OPC UA Server:taosExplorer 安全通道与用户认证配置指南

TDengine 接入 GE CSS OPC UA Server:taosExplorer 安全通道与用户认证配置指南 【免费下载链接】tdengine TDengine is an open source, high-performance, cloud native time-series database optimized for Internet of Things (IoT), Connected Cars, Industria…

📰

Toonflow是什么?AI短剧工厂完整指南:2小时把小说变成成片,创作效率提升10倍

Toonflow是什么?AI短剧工厂完整指南:2小时把小说变成成片,创作效率提升10倍 【免费下载链接】Toonflow-app Toonflow 是一款 AI 短剧漫剧工具,能够利用 AI 技术将小说自动转化为剧本,并结合 AI 生成的图片和视频&#…

📰

Macrotrends 历史金融数据提取实战:基于 browser-harness 的四种无浏览器抓取模式

Macrotrends 历史金融数据提取实战:基于 browser-harness 的四种无浏览器抓取模式 【免费下载链接】browser-harness Browser Harness | Self-healing harness that enables LLMs to complete any task. 项目地址: https://gitcode.com/gh_mirrors/br/browser-har…

📰

Luckysheet 快速上手指南:纯前端在线表格的初始化、数据格式与核心能力全解析

前端UI组件 【免费下载链接】Luckysheet Luckysheet upgraded to Univer 项目地址: https://gitcode.com/gh_mirrors/lu/Luckysheet 点击查看 免费下载 本文基于仓库 docs/zh/guide/README.md 编写,结合 package.json、src/config.js、src/core.js 等源…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬