鱼C论坛

 找回密码
 立即注册
查看: 1579|回复: 2

[已解决]求助 第023讲:列表(V)课后测试题 动动手1. 请编程找出矩阵中的幸运数字

[复制链接]
发表于 2021-8-7 00:13:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 deweyoo 于 2021-8-7 00:14 编辑

求解 这个答案的解析, 尤其不太懂第17行      # 因为涉及付费内容以及给没有做题的同学提前泄露答案.  故没有贴出原题目内容, 仅贴出答案


  1. matrix = [[10, 36, 52],
  2.           [33, 24, 88],
  3.           [66, 76, 99]]

  4. row = len(matrix)
  5. col = len(matrix[0])

  6. min_row = [1024] * row
  7. max_col = [0] * col

  8. # 遍历矩阵中的每一个元素
  9. # 找到每行中最小的元素,并将它们存放到列表min_row中
  10. # 找到每列中最大的元素,并将它们存放到列表max_col中
  11. for i in range(row):
  12.     for j in range(col):
  13.         min_row[i] = min(matrix[i][j], min_row[i])
  14.         max_col[j] = max(matrix[i][j], max_col[j])

  15. # 遍历矩阵中的每一个元素
  16. # 判断是否同时满足“同一行的所有元素中最小”和“同一列的所有元素中最大”
  17. for i in range(row):
  18.     for j in range(col):
  19.         if matrix[i][j] == min_row[i] and matrix[i][j] == max_col[j]:
  20.             print(matrix[i][j])
复制代码



17.  max_col[j] = max(matrix[i][j], max_col[j])    # 找到每列中最大的元素,并将它们存放到列表max_col中

这里的 j 每次迭代,  max_col 是否如下变化  

[[0], [0], [0]]

第一次迭代

[[10], [0], [0]]

第二次迭代

[[10], [36], [0]]

第三次迭代

[[10], [36], [52]]


和注释里要达到的目的似乎不一致,  还是我对这个迭代理解有误.  烦请大佬指点, 谢谢
最佳答案
2021-8-7 01:10:20
max_col变化如你所说,结果是对的,你可以用pycharm或vscode插断点观察每一步。
带入数据,就是3x3遍历。逐个数据分别和预设的最小值0,和最大值1024比较。
min_row里只存当前比较过的最小的,max_col只存当前比较过的最大的。
刚开始比较看不出结果,之后所有数据遍历完才能出真正的结果。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-8-7 01:10:20 | 显示全部楼层    本楼为最佳答案   
max_col变化如你所说,结果是对的,你可以用pycharm或vscode插断点观察每一步。
带入数据,就是3x3遍历。逐个数据分别和预设的最小值0,和最大值1024比较。
min_row里只存当前比较过的最小的,max_col只存当前比较过的最大的。
刚开始比较看不出结果,之后所有数据遍历完才能出真正的结果。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-8-9 22:32:04 | 显示全部楼层
本帖最后由 deweyoo 于 2021-8-9 22:40 编辑
suchocolate 发表于 2021-8-7 01:10
max_col变化如你所说,结果是对的,你可以用pycharm或vscode插断点观察每一步。
带入数据,就是3x3遍历。 ...


谢谢您的回复, 原来是我没有继续往下看外层 i  的循环, i 往后循环就能够实现提取出来每一列中的最大值了.

不得不佩服解题的公式设计, 还是自己没有编程思维哎.

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-20 11:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表