python查找鞍点
问题:对于给定5X5的整数矩阵,设计算法查找出所有的鞍点的信息(包括鞍点的值和行、列坐标,坐标从1开始)。
提示:鞍点的特点:列上最小,行上最大。
思路:求出每一行的最大值,将行号、列号、值存入列表中,
矩阵转秩
求出每一行的最小值,将行号、列号、值存入列表中,
判断重复的即为所求值
代码:
list1=[] list_max=[] list_min=[] for i in range(5): list=input().split() list_int=[int(x) for x in list] list1.append(list_int ) k=0 for j in list_int: if j==max(list_int): break k=k+1 list_max.append([i+1,k+1, max(list_int)]) #print(list_max) list2=[[list1[j][i] for j in range(5)] for i in range(5)] i=0 for l in list2: i=i+1 k = 0 for j in l : if j == min(l): break k = k + 1 list_min.append([ k + 1,i, min(l)]) #print(list_min) for i in list_max: for j in list_min: if str(i)==str(j): print(i,end=" ")
【题目描述】
对于给定5X5的整数矩阵,设计算法查找出所有的鞍点的信息(包括鞍点的值和行、列坐标,坐标从1
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步