【剑指offer】二维数组中的查找

二维数组中的查找

http://www.nowcoder.com/questionTerminal/abc3fe2ce8e146608e868a70efebf62e

思路:从左下角/右上角开始遍历,每走一步就可以剔除一行或者一列。
复杂度:O(m+n)

public class Solution {
    public boolean Find(int target, int[][] array) {
        if (array == null) {
            return false;
        }
        int m = array.length;
        int n = array[0].length;
        int i = 0, j = n - 1;

        while (i < m && j >= 0) {
            if (target == array[i][j]) {
                return true;
            } else if (target > array[i][j]) {
                i++;
            } else {
                j--;
            }
        }
        return false;
    }
}
全部评论

相关推荐

10-10 01:10
已编辑
深圳大学 测试开发
面了100年面试不知...:六月到九月,四个项目一个实习,是魔丸吗
投了多少份简历才上岸
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务