【发布时间】:2018-07-21 02:41:26
【问题描述】:
我想在删除每个元素后得到所有数组元素的所有组合
例如:
输入:[6,5,3,4]
输出应该是:[[5,3,4],[6,3,4],[6,5,4],[6,5,3]]
不使用任何库
我在这段代码中工作,但没有输出正确的结果
var arrs = [[]];
function doIt(arr) {
for (var i = 0; i < arr.length; i++) {
arrs[i] = arr.filter(function (item) {
return item != i
});
}
console.log(JSON.stringify(arrs));
}
doIt([4, 3, 1]);
【问题讨论】:
-
好主意,你有没有尝试过?
-
是的,检查一下pastebin.com/ZkuzF0FK
-
请在问题中添加您尝试过的内容。
-
您可以利用递归模式。第一个子列表开头没有
6,但其余的都有。 -
您遇到问题的代码是什么?你的代码有什么问题?您收到错误消息吗?错误信息是什么?你得到的结果不是你期望的结果吗?你期望什么结果,为什么,你得到的结果是什么,两者有什么不同?您正在观察的行为不是期望的行为吗?期望的行为是什么,为什么,观察到的行为是什么,它们有何不同?请提供minimal reproducible example在问题中。
标签: javascript arrays algorithm