数组去重
原型方法
//---------------first---------------
Array.prototype.distinct = function(){
var arr=[];
var obj={}; //对象承接
for(var i=0,len=this.length;i普通方法
function removeRepeat(arr){
var array=[];
var obj={};
for(var i=0,len=arr.length;i数组查找
顺序查找
function SequenceSearch(arr, value){
var i;
for(i=0; i二分查找
二分查找元素必须是有序的,如果是无序的则要先进行排序操作
-------------折半查找--------------
function BinarySearch1(arr, value){
var low, high, mid;
low = 0;
high = arr.length-1;
while(low<=high){
mid = Math.floor((low+high)/2);
if(a[mid]==value){
return mid;
}
if(a[mid]>value){
high = mid-1;
}
if(a[mid]value){
return BinarySearch2(arr, value);
}
if(a[mid]数组插入
顺序插入
//----------------first----------------
function Insert(arr, n, data){
//若插入数据位置不在表尾
if (n < arr.length){
//将要插入位置之后元素依次向后移动一位
for (var i = seqList.ListLen - 1; i >= n; i--) {
seqList.ListData[i + 1] = seqList.ListData[i];
}
}
//将数据插入到位置为n的位置并将数组的长度加1
seqList.ListData[n-1] = data;
seqList.ListLen++;
return true;
}
//----------------second----------------
function aa(arr, val) {
for (var i = 0; i -1) {
arr.splice(index, 1);
}
};
var emp = ['abs','dsf','sdf','fd']
bb(emp, 'fd'); 数组删除
function Delete(arr, n){
//判断数组是否为空
if (seqList.ListLen == 0) return false;
//判断n的位置是否合法
if (n < 1 || n > seqList.ListLen) return false;
//如果删除不是最后位置
if (n < seqList.ListLen) {
//将删除位置后继元素依次前移
for (int i = n; i < seqList.ListLen; i++) {
seqList.ListData[i-1] = seqList.ListData[i];
}
}
//表长减1
seqList.ListLen--;
return true;
}











