二维数组查找

题目:在一个二维数组中,每一行都是按照从左向右递增的顺序排列,每一列都按照从上到下的递增的顺序排列。请完成一个函数,输入二维数组和一整数,判断数组中是否含有该整数

public class Test{
	public static void main(String[] args) {
		int[][] arr = {{1,2,8,9}, {2,4,9,12},{4,7,10,13},{6,8,10,15}};
		System.out.println(find(arr, 4, 4, 0));
	}
	
	public static boolean find(int[][] matrix, int rows, int columns, int number) {
		for (int i=0; i<rows; i++)
			for (int j=columns-1; j>=0; j--) {
				if (matrix[i][j] == number)
					return true;
				else if (matrix[i][j] > number) {
					columns -= 1;
					break;
				}
				else {
					rows -= 1;
					break;
				}
			}
		return false;
	}
}
posted @ 2017-06-09 16:11  被罚站的树  阅读(136)  评论(0编辑  收藏  举报