题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
分析:每次都从二维数组的右上角元素开始找
public class Solution { public boolean Find(int [][] array,int target) { boolean isFound=false; int columnCount=array.length; int rowCount=array[0].length; if(array!=null&&columnCount!=0&&rowCount!=0){ int currentRow=0; int currentColumn=columnCount-1; while(currentRow<rowCount&¤tColumn>=0){//循环迭代 if(array[currentRow][currentColumn]==target){//将右上角的元素与findValue比较 isFound=true; break; }else if(array[currentRow][currentColumn]>target){ currentColumn--; }else{ currentRow++; } } } return isFound; } }
时间: 2024-10-12 12:14:11