javascript配列は、再検索/挿入/削除されます.

2482 ワード

配列
モデル方法
//---------------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;
}