冒泡排序
js
const bubble_sort = (nums) => {
const len = nums.length;
for(let i=0;i<len-1;i++){ // 最后一个没法比较,所以-1
let swapped = false;
for(let j=0;j<len-i-1;j++){
if(nums[j] > nums[j+1]){
[nums[j], nums[j+1]] = [nums[j+1], nums[j]];
swapped = true;
}
}
if(!swapped) break;
}
return nums;
}
选择排序
js
const select_sort = (nums) => {
const len = nums.length;
for(let i=0;i<len;i++){
let max = i;
for(let j=i+1;j<len;j++){
if(nums[j] > nums[max]){
max = j;
}
}
if(max!==i){
[nums[i], nums[max]] = [nums[max], nums[i]];
}
}
return nums;
}