算法(TS):找出数组中和为sum的n个数

使用递归和回溯

ts 复制代码
function findSum(arr: number[],target:number,count:number):number[][] {
    if(arr.length === 0 || count <= 0) return []
    const answers: number[][] = []
    const current: number[] = []

    const backtrack = (start: number,sum: number,n: number) => {
        if(sum === 0 && n === 0) {
            answers.push([...current])
            return
        }

        for(let i = start; i < arr.length; i++) {
            if(arr[i] <= sum) {
                current.push(arr[i])
                backtrack(i + 1,sum-arr[i],n-1)
                current.pop()
            }
        }
    }

    backtrack(0,target,count)
    return answers

}
相关推荐
工业胶粘剂技术几秒前
单组分高温环氧结构胶 K-EP280 完整技术参数与工程选型分析
算法·制造
qq4356947016 分钟前
Vue03
javascript·vue.js
樱花的浪漫18 分钟前
Typescript、Zod基础
前端·javascript·人工智能·语言模型·自然语言处理·typescript
竹林81830 分钟前
监听智能合约事件,我用 wagmi v2 踩了三天坑,终于找到了稳定方案
前端·javascript
不好听61331 分钟前
Bun vs Node.js:谁才是 TypeScript 的"亲爹"?
typescript·node.js·bun
用户8524950718431 分钟前
Bun 到底是什么?一个比 Node.js "更快更香"的 JS 运行时
javascript·程序员
riuphan32 分钟前
JavaScript 事件循环:单线程异步编程的核心机制
前端·javascript
小小龙学IT36 分钟前
Midscene.js:AI驱动的跨平台UI自动化革命
javascript·人工智能·ui
触底反弹37 分钟前
从 Bun 到 DeepSeek:用 TypeScript 构建你的第一个 AI Agent
人工智能·http·typescript
拾年2751 小时前
Bun:重新定义 JavaScript 运行时 - 为什么它可能是 Node.js 的终结者?
javascript·typescript·bun