js实现数组的基本排序与去重

//位置交换Array.prototype.wrap=function(i,j){    var temp;    temp=this[i];    this[i]=this[j];    this[j]=temp;    return this;}//数组去重Array.prototype.unique=function(){    var outArr=[];    for(var i=0;ithis[i + 1]) {                this.wrap(i, i + 1);                flag = true;            }        }    }    return this;};// 插入排序Array.prototype.insertp=function(){    for(var i=1;ithis[i]) {

m = i;

if(m!=j){

this.wrap(j,m);

}

}

}

}

return this;

};

//快排(一)

Array.prototype.quickp=function(left,right){

if(left < right) {

var  s = this[left];

var  i = left;

var  j = right + 1;

while(true) {

// 向右找

while(i + 1 < this.length && this[++i] < s) ;

// 向左找

while(j -1 > -1 && this[--j] > s) ;

if(i >= j){

break;

}else{

this.wrap( i, j);

}

}

this[left] = this[j];

this[j] = s;

this.quickp(left, j-1);  // 对左边进行递回

this.quickp(j+1, right);  // 对右边进行递回

}

return this;

};排序

你可能感兴趣的:(js实现数组的基本排序与去重)