劍指offer---二維數組中的查找

劍指offer---二維數組中的查找

題目:在一個二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。 
public class Find {
	public static boolean findNum(int[][] arr,int m){
		if(arr.length<=0) return false;
		int rows=arr.length;
		int colums=arr[0].length;
		int j = colums-1;
		int i=0;
		int temp = arr[i][j];
		while(j>=0&&i<rows-1){
			if(temp==m) return true;
			if(temp>m){
				j--;
				temp=arr[i][j];
			}else {
				i++;
				temp=arr[i][j];
			}
		}
	return false;	
	}	
	public static void main(String[] args){
		Find find = new Find();
		int[][] array={{1,2,8,9},{2,4,9,12},{4,7,10,13},{6,8,11,15}};
		System.out.print(find.findNum(array, 5));
	}
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章