原理:遍历整个数组,依次比较相邻的两个值,如果前一个值比后面的值大,即交换他们的位置,依照这个规则进行多次并且递减的迭代,直到顺序正确。
降序
var arr=[33,21,2,4,521,456]
for(var i = 0; i < arr.length; i++){
for(var j = 0; j <arr.length -i -1; j++){
if(arr[j] < arr[j+1]){
var num = arr[j]
arr[j] = arr[j+1]
arr[j+1] = num
}
}
}
console.log(arr)
输出:[521, 456, 33, 21, 4, 2]
升序
var arr=[33,21,2,4,521,456]
for(var i = 0; i <arr.length; i++){
for(var j = 0; j < arr.length -i -1; j++){
if(arr[j] > arr[j+1]){
var num = arr[j]
arr[j] = arr[j+1]
arr[j+1] = num
}
}
}
console.log(arr)
输出:[2, 4, 21, 33, 456, 521]
网友评论