优秀北京网站建设模板做网站
web/
2025/10/7 5:51:34/
文章来源:
优秀北京网站建设,模板做网站,微信公众号怎么申请,车辆租赁的网站建设给你一个无重复元素的整数数组 candidates 和一个目标整数 target #xff0c;找出 candidates 中可以使数字和为目标数 target 的所有不同组合 #xff0c;并以列表形式返回。你可以按 任意顺序返回这些组合。 candidates 中的同一个数字可以无限制重复被选取 。如果至少一个… 给你一个无重复元素的整数数组 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 30 2 candidates[i] 40 candidates 的所有元素 互不相同 1 target 40 解题思想来自https://leetcode.cn/problems/combination-sum/solution/ren-zhe-suan-fa-9fen-zhong-bai-ban-jiang-nikl/ 代码如下
import copy
class Solution:def __init__(self):self.ans []def combinationSum(self, candidates: list, target: int) - list:self.backtracking(candidates, [], 0, target, 0)return self.ansdef backtracking(self, candidatas, path: list, path_sum, target, start_index):if path_sum target:self.ans.append(copy.deepcopy(path))returnfor i in range(start_index, len(candidatas)):if (path_sum candidatas[i]) target:path.append(candidatas[i])self.backtracking(candidatas, path, path_sumcandidatas[i], target, i)path.pop()andidatas[i], target, i) path.pop()
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88315.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!