//另一种选择排序算法
const find = (arr) => {
let index = 0;
let small = arr[0];
for (let i = 0; i < arr.length; i++) {
if (arr[i] < small) {
small = arr[i];
index = i;
}
}
console.log(index);
return index;
};
const sort = (arr2) => {
let newArr = [];
for (let i = 0; i < arr2.length; i++) {
let index = find(arr2);
let popArr = arr2.splice(index, 1);
newArr.push(popArr[0]);
}
return newArr;
};
console.log(sort(values));
回复 (4)
L
arr2长度一直在变小,不会有你预期的循环次数
L
引用 qxl1231@Liaozzzzzz 我当然知道啦..怎么优化呢?
@qxl1231 从后向前循环~
Q
引用 Liaozzzzzzarr2长度一直在变小,不会有你预期的循环次数
@Liaozzzzzz 我当然知道啦..怎么优化呢?
Z
引用 qxl1231@Liaozzzzzz 我当然知道啦..怎么优化呢?
@qxl1231 循环体最后加上"i--"
参与回复
登录后即可参与回复。登录