美文网首页
寻找鞍点(Python)

寻找鞍点(Python)

作者: 52_St | 来源:发表于2018-01-15 13:20 被阅读69次

    知识点

    给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。

    例如:在下面的例子中(第4行第1列的元素就是鞍点,值为8)。

    list1 = [[11, 3, 5, 6, 9],
             [12, 4, 7, 8, 10],
             [10, 5, 6, 9, 11],
             [8, 6, 4, 7, 2],
             [15, 10, 11, 20, 25]]
    

    为方便大家直接把这个矩阵写成列表了。

    最后输出:
    第4行,第1列,值为8,即从1开始计数。

    代码部分如下:

    list1 = [[11, 3, 5, 6, 9],
             [12, 4, 7, 8, 10],
             [10, 5, 6, 9, 11],
             [8, 6, 4, 7, 2],
             [15, 10, 11, 20, 25]]
    
    for r in range(len(list1)):
        c = list1[r].index(max(list1[r]))
        k = 0
        while k < len(list1):
            if list1[r][c] <= list1[k][c]:
                k += 1
                if k == len(list1):
                    print('鞍点在第{}行,第{}列,值为:{}'.format(r + 1, c + 1, list1[r][c]))
            else:
                break
    
    360截图1637062968117101.jpg

    相关文章

      网友评论

          本文标题:寻找鞍点(Python)

          本文链接:https://www.haomeiwen.com/subject/mmgroxtx.html