讲述js算法中的排序、数组去重其实在js中实现数组排序,采用数组中sort方法实现还是比较简单的:一 排序简单
讲述js算法中的排序、数组去重
其实在js中实现数组排序,采用数组中sort方法实现还是比较简单的:
一 排序
简单实现数组排序
var arr = [];for(var i=0;i<20;i++){arr.push(parseInt(Math.random()*10));}Array.prototype.indexOf = function(n){for(var i=0;i<this.length;i++){if(this[i] == n){return i;}}return -1;}function removeDup(arr,s,e){if(s==e){//分割就剩下一个return [arr[s]]}else if(s==e-1){//为了优化 剩下两个就不用分割啦if(arr[s]==arr[e]){return [arr[s]]}else{return [arr[s],arr[e]];}}//数组平分成两段,var l = Math.floor((s+e)/2);//左边var arrL = removeDup(arr,s,l);//右边var arrR = removeDup(arr,l+1,e);//结果 先把左边的复制进去var result = arrL;//循环 将不重复的数据插入到结果里面for(var i=0;i<arrR.length;i++){if(result.indexOf(arrR[i])== -1 ) result.push(arrR[i])}return result; //返回结果}var arrDup = removeDup(arr, 0, arr.length-1);document.write(arr+'<br/>'+arrDup);