// 先取第一项的所有情况
// 删除取得的项
// 递归直到原数组结束
let reWarp = []
function getArrAllSort(arr, currentArr) {
for (let i = 0; i < arr.length; i++) {
let current = arr[i]
let copy = arr.slice()
copy.splice(i, 1)
if (copy.length > 0) {
// 处理初始化第一项和后续
let currentA = currentArr?[...currentArr,current]:[current]
getArrAllSort(copy, currentA)
} else {
const re = [...currentArr,current]
reWarp.push(re)
}
}
}
getArrAllSort([1, 2, 3])
console.log(reWarp)
js 获取数组的全部排列顺序
最新推荐文章于 2022-06-28 18:32:03 发布