Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

39. 组合总和 #30

Open
Open
Labels
@Geekhyt

Description

@Geekhyt

原题链接

回溯

先明确,元素可以重复使用,但是组合不能重复。

  1. 使用回溯法,不符合条件的情况进行剪枝。
  2. cur === target 时,拷贝 arr 推进结果集。
  3. 从 start 开始遍历可选数组,选择当前数字后递归时注意要基于当前状态 i 继续选择,因为元素是可以重复进入集合的。
  4. 撤销选择,恢复状态。
constcombinationSum=(candidates,target)=>{constres=[]// start: 起点索引 arr: 当前集合 cur: 当前所求之和constdfs=(start,arr,cur)=>{if(cur>target)returnif(cur===target){res.push(arr.slice())return}for(leti=start;i<candidates.length;i++){arr.push(candidates[i])dfs(i,arr,cur+candidates[i])arr.pop()}}dfs(0,[],0)returnres}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


      [8]ページ先頭

      ©2009-2025 Movatter.jp