js 快速数组排序 Array sort()排序算法 splice()
2017-09-22 16:12
736 查看
//数组快速排序算法,参数为数组 var quick = function (array) { if (array.length <= 1) { return array; } var mid = Math.floor(array.length / 2); //选取中点值为基准 var midValue = array.splice(mid, 1)[0]; //将原数组隔离 var left = []; //定义的两个空数组用来存放排序后的元素 var right = []; for(var i=0;i<array.length;i++){ //遍历初数组的元素 if(array[i]<midValue){ //将遍历出的值与基准选取的值比较 left.push(array[i]) //小的放左边,大的放右边 }else{ right.push(array[i]) } } //递归重复,将排序好的数组拼接返回 return quick(left).concat([midValue], quick(right)); }; //调用时将数组传入函数,作为参数即可 var arr = [66, 2, 3, 15, 95, 48, 48, 24, 51, 9,78]; console.log(quick(arr)); //2, 3, 9, 15, 24, 48, 48, 51, 66, 78, 95
相关文章推荐
- js中数组(Array)的排序(sort)注意事项说明
- js中数组(Array)的排序(sort)注意事项说明
- js中数组(Array)的排序(sort)注意事项
- JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
- JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
- js中数组(Array)的排序(sort)注意事项 (转)
- js使用Array.prototype.sort()对数组对象排序的方法
- js中数组(Array)的排序(sort)注意事项
- js中数组(Array)的排序(sort)注意事项
- js中数组(Array)的排序(sort)注意事项
- js数组Array元素排序sort
- js sort 数组排序 Array Sort
- js使用Array.prototype.sort()对数组对象排序的方法
- js中数组(Array)的排序(sort)注意事项
- JS 对象数组Array 根据对象object key的值排序sort,很风骚哦
- js中数组(Array)的排序(sort)注意事项说明
- JS数组去重,js中数组(Array)的排序(sort)
- js中数组(Array)的排序(sort)注意事项
- JS 数组array方法push, pop, unshift, shift, slice,splice,contact, join, sort
- js数组Array sort方法使用深入分析