排序
快速排序
function quickSort(arr) {
if(arr.length<=1){
return arr;
}
var pointIndex = Math.floor(arr.length/2);
var pointValue = arr.splice(pointIndex,1)[0];
var left = [];
var right = [];
for(var i=0; i<arr.length; i++){
arr[i]<pointValue ? left.push(arr[i]) : right.push(arr[i]);
}
return quickSort(left).concat([pointValue],quickSort(right));
}
var res = quickSort([50, 11, 16, 32, 24, 99, 57, 100]);
console.log(res);
冒泡排序
function bubbleSort() {
var arr =Array.prototype.slice.call(arguments);
for(var i=0;i<arr.length-1;i++){
for(var j=0;j<arr.length-1-i;j++){
if(arr[j]>arr[j+1]){
arr[j]=arr[j]+arr[j+1];
arr[j+1]=arr[j]-arr[j+1];
arr[j]=arr[j]-arr[j+1];
}
}
}
return arr;
}
console.log(bubbleSort(50, 11, 16, 32, 24, 99, 57, 100));
短小精悍的方法
function mySort() {
var tags = Array.prototype.slice.call(arguments);
tags.sort(function (a, b) {
return a - b;
});
return tags;
}
var result = mySort(50, 11, 16, 32, 24, 99, 57, 100);
console.log(result);