新手区 二维数组的查找

毛驴 · 2021年01月30日 · 最后由 恒温 回复于 2021年01月30日 · 1853 次阅读

在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
示例:

引用自剑指 offer 04

现有矩阵 matrix 如下:

[
[1, 4, 7, 11, 15],
[2, 5, 8, 12, 19],
[3, 6, 9, 16, 22],
[10, 13, 14, 17, 24],
[18, 21, 23, 26, 30]
]
解题思路

class Solution(object):
    def findNumberIn2DArray(self, matrix, target):
        """
        :type matrix: List[List[int]]
        :type target: int
        :rtype: bool
        """
        for i in matrix:
            if target in i:
                return True
            else:
                return False

测试用例:

[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]]
5

测试结果

False

问题
为什么 return 了 false 呢,5 不是在matrix[1] 中吗

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 1 条回复 时间 点赞
when i = [1,4,7,11,15] and target = 5,
5 not in  [1,4,7,11,15], return false
毛驴 关闭了讨论 01月30日 22:40
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册