//两值互换
function Sort(arr, index){ //参数arr代表数组,index代表数组元素下标
arr[index] += arr[index + 1]; //a+=b;
arr[index + 1] = arr[index] - arr[index + 1]; // b = a - b;
arr[index] -= arr[index + 1]; //a -= b;
}
function arrays(arr, asc){ //参数arr代表数组,sac为设置升降序
for(var i = 1; i < arr.length; i++){
for(var k = 0; k < arr.length - 1; k++){
if(asc){ //如果asc为true则通过,否则则不通过
if(arr[k] > arr[k + 1]){
Sort(arr, k); //在这里调用两值互换函数
}
}else{
if(arr[k] < arr[k + 1]){
Sort(arr, k); //在这里调用两值互换函数
}
}
}
}
return arr;
}
var array = arrays([2, 6, 3, 9, 28, 15, 26, 4, 25], false);//true为升序,false为降序
console.log('array==>>', array);
本文介绍了一个简单的数组排序算法实现过程,通过定义两个函数完成排序任务。首先使用两值互换函数调整数组中相邻元素的位置,然后通过arrays函数实现对整个数组的排序,支持升序和降序两种方式。
1048

被折叠的 条评论
为什么被折叠?



