冒泡排序
冒泡排序法(先排大的)
* 当前元素跟下一个元素对比
* 把最大的逐个往后排列
目的:得到一个从小到达排列的数组
var arr = [10,6,3,25,30,13,9,14];
for(var j=0;j<arr.length-1;j++){
for(var i=0;i<arr.length-j-1;i++){
if(arr[i] > arr[i+1]){
var res = arr[i];
arr[i] = arr[i+1];
arr[i+1] = res;
}
}
}
console.log(arr);
选择排序法
选择排序法(先排小的)
* 把当前元素分别跟后面的元素对比
* 把最小的逐个往前排列
目的:得到一个从小到达排列的数组
var arr = [100,60,30,25,30,130,90,140];
for(var i=0;i<arr.length-1;i++){
for(var j=i+1;j<arr.length;j++){
if(arr[i] > arr[j]){
var res = arr[i];
arr[i] = arr[j];
arr[j] = res;
}
}
}
console.log(arr.reverse());
sort排序
排序方法sort
* 默认以字符串排序(转换成ASCII码进行对比)
* 传入回调函数
* 教sort方法如何排序
目的:得到一个从小到达排列的数组
var arr = [100,60,30,25,30,13,90,14];
arr.sort(function(a,b){
return a-b;
})
console.log(arr)