从二维数组中查找(一)
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
function Find(target, array){ //可以从二维数组的左下角开始找对应的元素,如果此时目标值 //大于二维数组左下角的数,那么说明目标值不在第一列 //如果目标值小于二维数组左下角的数,那么说明目标值不在最后一行 var rowNum=array.length-1; var colNum=array[0].length-1; //二维数组左下角的数表示为array[row-1][0] var i=rowNum,j=0; //需要有一个循环 while(i>=0 && j<=colNum){ if(target==array[i][j]){ return true; } if(array[i][j]>target){ i--; // continue;//说明结束了这一次循环,进入下一次循环 //说明 如果array[i][j]如果是大于target 然后将row--之后 就结束这次循环,并不会对col有什么影响 }else if(array[i][j]<target){ j++; // continue; } } return false; }