var arr =[1,4,5,2,3]
function sort(arr){
let len = arr.length -1
for(let i=0;i<len;i++){
for(let j=0;j<len-i;j++){
if(arr[j]>arr[j+1]){
let swap = arr[j]
arr[j] = arr[j+1]
arr[j+1] = swap
}
}
}
return arr
}
// console.log(sort(arr))
function fastSort(arr){
if(arr.length<=1){
return arr
}
let middle = Math.floor(arr.length/2);
let left =[]
let right =[]
let middleData = arr[middle]
arr.splice(middle,1)
for(let i=0;i<arr.length;i++){
if(arr[i]>=middleData){
right.push(arr[i])
}
if(arr[i]<middleData){
left.push(arr[i])
}
}
return [...fastSort(left),middleData,...fastSort(right)]
// return arr
}
console.log(fastSort(arr))
冒泡加快排
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 排序是一个非常常见的应用场景,很多时候,我们需要根据自己需要排序的数据类型,来自定义排序算法,但是,在这里,我们只...