一、常见的数组排序方法:
//冒泡 function bubbleSort(arr){ var r=1,i=0; for(r=1;r<arr.length;r++){ for(i=0;i<arr.length-1;i++){ arr[i]>arr[i+1]&&(arr[i+1]=[arr[i],arr[i]=arr[i+1]][0]) } } }
//插入 var arr=[2,4,1,3,5]; function insertSort(arr){ for(var i=1;i<arr.length;i++){ var temp=arr[i]; var p=i-1; while(temp<arr[p]&&p>=0){ arr[p+1]=arr[p]; p--; } arr[p+1]=temp; } } insertSort(arr); console.log(arr);
二、数组去重方法
var arr=["air","b","clock","army","clock","air"]; //1.遍历 function unique1(arr){ for(var i=0,unique=[];i<arr.length;i++){ var r=unique.indexOf(arr[i]); if(r==-1){ unique.push(arr[i]); } } return unique; } console.log(String(unique1(arr))) //2.hash function unique2(arr){ for(var i=0,unique={};i<arr.length;i++){ unique[arr[i]]===undefined&&(unique[arr[i]]=1); } arr=[]; for(var key in unique){ arr.push(key); } return arr; } console.log(String(unique2(arr))) //3.正则 function unique3(arr){ var reg=/(^|,,)([^,]+)(..\2)*/g; return arr.sort().join(",,").replace(reg,"$1$2").split(",,"); } console.log(unique3(arr));
原文地址:https://www.cnblogs.com/qinmanyu/p/10105243.html
时间: 2024-11-02 03:21:59