摘要: 给定一个不重复的正整数集合,从中取N个数字,使得他们的和为M,写一个函数,求这个N个数字。如有多个,只需要返回一个。 function sumN(arr, n, m, i = 0, result = []) { if (m 0) return result if (i arr.length || n 阅读全文
posted @ 2022-03-15 11:07 jerry-mengjie 阅读(297) 评论(0) 推荐(0)
摘要: k=0或者S.length k返回当前解 // S :数组,需要求组合的集合 // k : 取出元素个数 function combination(S, k) { if (k 0 || S.length k) { return [S.slice(0, k)] } const [first, ...o 阅读全文
posted @ 2022-03-15 11:07 jerry-mengjie 阅读(41) 评论(0) 推荐(0)
摘要: 1、最简单全排列,需要0.8秒,concat不改变原数组,返回新数组 function permutation(str, select = []) { if (str.length select.length) { return select.map((item) => str[item]).joi 阅读全文
posted @ 2022-03-15 10:17 jerry-mengjie 阅读(92) 评论(0) 推荐(0)
摘要: 决策树的每个决策代表选择一个字符放入子集,决策树的叶子节点代表最终的结果,与顺序无关。 function subsets(str, list) { if (list.length str.length) { return [list.map((v, i) => v ? str[i] : '').jo 阅读全文
posted @ 2022-03-15 10:10 jerry-mengjie 阅读(55) 评论(0) 推荐(0)