数组的排序方法
数组的排列方式有很多,今天就介绍两种经典的排序方法
第一种:选择排序法
选择排序法就是用一个值和依次和后面所有的值进行比较,如果是大于后面的值,那么久交换位置(升序),如果是小于后面对值就交换位置(降序)。
let arr = [1, 3, 5, 7, 9,2,4,6,8];
(升序)
遍历数组
for (let i=0;i<arr.length;i++) {
for(let j=i+1;j<arr.length;j++){
if(arr[i]>arr[j]) {//降序的话就把此处大于号改成小于号就可以
[arr[i],arr[j]]=[arr[j],arr[i]];
}
}
}
console.log(arr);
第二种:冒泡排序法
冒泡排序法就是数组中两个相邻的值进行比较,值较大的就放后面(升序),值较小的就放后面(降序)。
let arr = [1, 3, 5, 7, 9,2,4,6,8];
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]]
}
}
console.log(arr);
}