尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
JAVA练习331- 组合总和
题目概览给你一个无重复元素的整数数组candidates和一个目标整数target找出candidates中可以使数字和为目标数target的 所有不同组合并以列表形式返回。你可以按任意顺序返回这些组合。candidates中的同一个数字可以无限制重复被选取。如果至少一个数字的被选数量不同则两种组合是不同的。对于给定的输入保证和为target的不同组合数少于150个。示例 1输入candidates [2,3,6,7], target 7输出[[2,2,3],[7]]解释2 和 3 可以形成一组候选2 2 3 7 。注意 2 可以使用多次。 7 也是一个候选 7 7 。 仅有这两种组合。示例 2输入:candidates [2,3,5], target 8输出:[[2,2,2,2],[2,3,3],[3,5]]示例 3输入:candidates [2], target 1输出:[]提示1 candidates.length 302 candidates[i] 40candidates的所有元素互不相同1 target 40来源39. 组合总和 - 力扣LeetCode解题分析方法回溯令当前索引为 i用集合 list 存储每次遍历得到的元素每次递归时遍历数组 candidates将元素加入 list 中然后 target - candidates[ i ]继续往下层遍历当 target 0 时存储 list 到最终结果中去当 target 0 时已没有可加的元素直接返回当 target 0 时继续重复以上操作遍历递归当下层遍历完成后将当前元素移除 list然后 target candidates[ i ]继续遍历下一个元素直到所有元素遍历完成返回结果。时间复杂度O(S) ( S 为所有可行解的长度之和 )空间复杂度O(target)class Solution { public ListListInteger combinationSum(int[] candidates, int target) { ListListInteger result new ArrayList(); backTracking(candidates, target, result, new ArrayList(), 0, candidates.length); return result; } public void backTracking(int[] candidates, int target, ListListInteger result, ListInteger list, int index, int n) { if (target 0) { result.add(new ArrayList(list)); return; } if (target 0) { return; } for (int i index; i n; i) { list.add(candidates[i]); target - candidates[i]; backTracking(candidates, target, result, list, i, n); list.remove(list.size()-1); target candidates[i]; } } }
RELATED

相关推荐

JAVA练习330- 电话号码的字母组合

JAVA练习330- 电话号码的字母组合

题目概览 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits "23" …

📅 2026/9/30 4:39:48
Cocos Creator 3D物理射线检测:从原理到实战的交互开发指南

Cocos Creator 3D物理射线检测:从原理到实战的交互开发指南

1. 项目概述:为什么3D物理射线检测是交互的基石在任何一个3D游戏或交互应用中,当玩家点击屏幕,试图选中一个远处的宝箱、与NPC对话,或者用准星瞄准敌人时,背后默默工作的核心技术,十有八九就是物理射线检测…

📅 2026/10/5 14:42:35
Godot状态机设计:从原理到实践解决2D平台游戏下落状态卡顿问题

Godot状态机设计:从原理到实践解决2D平台游戏下落状态卡顿问题

为什么你的角色在平台边缘总是"卡顿"?为什么跳跃动画和下落动画总是衔接不自然?如果你正在使用Godot开发2D平台游戏,那么状态机设计很可能是你游戏流畅度的关键瓶颈。 很多开发者以为状态机只是简单的if-else堆砌,但实…

📅 2026/10/15 11:18:30
MORE NEWS

更多资讯

📰

莫旗怎么报考电工证千万别踩坑!工地太忙根本没时间复习考试

莫旗怎么报考电工证千万别踩坑!工地太忙根本没时间复习考试 工地太忙根本没时间复习考试,很多人心里都清楚,但一到报考电工证这事儿,就容易乱了阵脚。特别是在莫旗,很多人对本地的报考流程、考试内容、证书有效期等关键信息一知半解,结果不仅耽误了时间…

📰

真实经历揭秘:美女考低压电工证怕考不过白交培训费?别慌,听我讲

真实经历揭秘:美女考低压电工证怕考不过白交培训费?别慌,听我讲 怕考不过白交培训费?我见过太多人因为没准备就报名,结果考试不过,钱打水漂。其实,考低压电工证这事,真不是靠运气,得有方法、有计划。今天就拿一个“ 美女考低压电工证…

📰

义马高级电工证咨询:工地太忙没时间复习?电子证书怎么考?

义马高级电工证咨询:工地太忙没时间复习?电子证书怎么考? 工地太忙根本没时间复习考试,这是很多一线电工的真实写照,尤其是义马地区,项目工期紧、任务重,考电工证成了不少人的“心头病”。现在国家对特种作业人员的要求越来越严格,高级电工证不仅是工…

📰

泗阳电工证快速办理2026河南最新政策下怎么考更稳妥

泗阳电工证快速办理2026河南最新政策下怎么考更稳妥 找工作被卡在特种作业证上,你不是一个人。在泗阳,很多电工想尽快上岗,却被“电工证快速办理”这五个字搞得晕头转向,甚至担心证能不能全国通用,到底能不能真上岗。2026年河南最新政策对特种作…

📰

湖州考电工证流程图片怎么弄?外省证能转过来吗?电子证书也管用

湖州考电工证流程图片怎么弄?外省证能转过来吗?电子证书也管用 之前考的证在外省能不能转过来?这个疑问,估计是很多在湖州打工的老电工心里都在打鼓。尤其是那些在洛阳涧西区建筑工地干了几年的工友,手上拿着外省的电工证,却因为不了解政策和流程,错过…

📰

四川机建电工证在外省能转过来吗?官方报名入口在这里

四川机建电工证在外省能转过来吗?官方报名入口在这里 之前考的证在外省能不能转过来?这个问题几乎每个在外地打工的四川机建电工证持有人都会遇到。尤其是现在跨省作业越来越频繁,很多人在别的省份工作,但证件却在老家,想用又怕麻烦。其实,只要按照流程…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

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

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

📞 💬