二維數組中的查找

//在一個二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。
//請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。

function Find(target, array){
    var cnt = array.length-1;
    var i,j;
    for(i=cnt, j=0; i>=0 && j<array[i].length;){
        if(target == array[i][j]){
            return true;
        }else if(target > array[i][j]){
            j++;
            continue;
        }else if(target < array[i][j]){
            i--;
            continue;
        }
    }
    return false;
}

//暴力索引
function Find2(target, array){
    var i;
    var cnt = array.length;
    for(i=0; i<cnt; i++){
        if(array[i].indexOf(target) !== -1){
            return true;
        }
    }
    return false;
}

var a = [[1,2,3],[4,5,6],[7,8,9]];
var b = 10;
var c = Find(b, a);
var d = Find2(b, a);
console.log(c,d);  //false false

練習地址:二維數組中的查找數組

相關文章
相關標籤/搜索