用JavsScript写排序:
1.快速排序:
function qkSort(arr,low,high) {
var getIndex=function(){
var temp=arr[low];
while(low<high){
while(low<high && arr[high]>=temp){
high--;
}
arr[low]=arr[high];
while(low<high && arr[low]<=temp){
low++;
}
arr[high]=arr[low];
}
arr[low]=temp;
return low;
};
if(low<high){
var index=getIndex();
qkSort(arr,0,index-1);
qkSort(arr,index+1,high);
}
return arr;
}
2.选择排序:
function choose() {
var arr=arguments[0];
var temp;
for(let i=0;i<arr.length;i++){
for(let j=i+1;j<arr.length;j++){
if(arr[i]>arr[j]){
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
return arr;
}
3.冒泡排序
function bubble(){
var arr=arguments[0];
var temp;
for(let j=0;j<arr.length;j++) {
for (let i = 0; i < arr.length-1; i++) {
if (arr[i] > arr[i + 1]) {
temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
}
return arr;
}