const _quickSort = (array,s=0,e=array.length) => { // 补全代码 const p = array[s]; let pi = s;if(e-s<=1)return; for(let i=s+1;i<e;i++){ if(array[i]>p) continue else { array.splice(pi,0,array.splice(i,1)[0]); pi+=1 } }; _quickSort(array,s,pi) _quickSort(array,pi+1,e) return array } // 简单说明,利用第一个元素作为预测中间值,因为简单。 // 然后移动中间值的位置,直到左边的都比它小; // 然后对左右的指定区间再进行排序 // 直接操作原数组,虽然是递归,但无额外增加的数组空间