💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
<hr> <div id="div1"><h3> <font color=red > 快速排序 </font><h3></div> 选择一个基准元素,通常选择第一个元素或者最后一个元素,通过一趟扫描,将待排序列分成两部分,一部分比基准元素小,一部分大于等于基准元素,此时基准元素在其排好序后的正确位置,然后再用同样的方法递归地排序划分的两部分。 >1.i =L; j = R; 将基准数挖出形成第一个坑a[i]。 2.j--由后向前找比它小的数,找到后挖出此数填前一个坑a[i]中。 3.i++由前向后找比它大的数,找到后也挖出此数填到前一个坑a[j]中。 4.再重复执行2,3二步,直到i==j,将基准数填入a[i]中 ```javascript let quicksort = function(arr) { if(arr.length <= 1) return arr; let pivot = Math.floor((arr.length -1)/2); let val = arr[pivot], less = [], more = []; arr.splice(pivot, 1); arr.forEach(function(e,i,a){ e < val ? less.push(e) : more.push(e); }); return (quicksort(less)).concat([val],quicksort(more)) } console.log(quicksort([7, 3, 4, 5, 10, 7, 8, 2])) ```