一个简单的快排

const quickSore = (arr) => {
  if(arr.length <= 1){
      return arr;
  }
  let middleIndex = Math.floor(arr.length / 2);
  let middleVal = arr.splice(middleIndex,1)[0];
  let leftArr = [],rightArr = [];
  for(let i = 0;i<arr.length;i++){
      if(arr[i]< middleVal){
          leftArr.push(arr[i]);
      }else{
          rightArr.push(arr[i]);
      }
  }
  return quickSort(leftArr).concat([middleVal],quickSort(rightArr));
};

猜你喜欢

转载自blog.csdn.net/mofigg/article/details/80692609