首页 > 其他 > 详细

LeetCode #1380. Lucky Numbers in a Matrix

时间:2020-11-27 17:25:50      阅读:3      评论:0      收藏:0      [点我收藏+]

题目

1380. Lucky Numbers in a Matrix


解题方法

遍历矩阵,将每一行的最小值存入字典,键为行下标,值为列下标。然后遍历字典的键,再遍历它所在的列,如果不是最小值就break当前循环,否则循环结束后把这个lucky number加到返回值rat中。
时间复杂度:O(mn)
空间复杂度:O(m)


代码

class Solution:
    def luckyNumbers (self, matrix: List[List[int]]) -> List[int]:
        dic = {}
        for i in range(len(matrix)):
            tempmin = matrix[i][0]
            dic[i] = 0
            for j in range(1, len(matrix[i])):
                if matrix[i][j] < tempmin:
                    tempmin = matrix[i][j]
                    dic[i] = j
        
        rat = []
        for key in dic.keys():
            for i in range(len(matrix)):
                if matrix[i][dic[key]] > matrix[key][dic[key]]:
                    break
            else:
                rat.append(matrix[key][dic[key]])
        return rat

LeetCode #1380. Lucky Numbers in a Matrix

原文:https://www.cnblogs.com/RatsCommander/p/14048517.html

(0)
(0)
   
举报
评论 一句话评论(0
© 2014 bubuko.com 版权所有 鲁ICP备09046678号-4
打开技术之扣,分享程序人生!
             

鲁公网安备 37021202000002号