我用JS做了一个冒泡排序算法(sorta)。它有时会起作用,但问题是它只遍历数组一次。这是我的代码:
function bubble(arr) {
for (var i = 0; i < arr.length; i++) {
if (arr[i] > arr[i + 1]) {
var a = arr[i]
var b = arr[i + 1]
arr[i] = b
arr[i + 1] = a
}
}
return arr;
}
最佳答案
另一个冒泡排序实现:
const bubbleSort = array => {
const arr = Array.from(array); // avoid side effects
for (let i = 1; i < arr.length; i++) {
for (let j = 0; j < arr.length - i; j++) {
if (arr[j] > arr[j + 1]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];
}
}
}
return arr;
};
关于Javascript:冒泡排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37817334/