JS实现排序算法
快速排序:
function parition(arr,low,high){ if(low==high){ return ; } let tmp=arr[low]; while(low<high){ while(low<high&&arr[high]>=tmp){ high--; } arr[low]=arr[high]; while(low<high&&arr[low]<=tmp){ low++; } arr[high]=arr[low]; } arr[low]=tmp; return low; } function quickSort(arr,low,high){ if(low<high){ let pivot=parition(arr,low,high); quickSort(arr,low,pivot-1); quickSort(arr,pivot+1,high); } } let a=[1,4,7,1,6,2,1]; quickSort(a,0,a.length-1); console.log(a)
冒泡排序:
function bubbleSort(arr){ for(let i=0;i<arr.length-1;++i){ let order=true; for(let j=0;j<arr.length-i-1;++j){ if(arr[j]>arr[j+1]){ order=false; [arr[j],arr[j+1]]=[arr[j+1],arr[j]]; } } if(order){ break; } } } let a=[1,4,7,1,6,2,1]; bubbleSort(a); console.log(a)

浙公网安备 33010602011771号