微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

找到具有最低最大值的行/列

如何解决找到具有最低最大值的行/列

考虑下面的矩阵:

A = randi([0 100],5,7)

62   59   20   42   49   41   83
37   34   13   65   82   47   24
93   33   19   93   30   37   20
42   49   74   96   26   41   21
14   85   14   90   77    4   96

首先我想找到每一行的最大值和列索引:

   83    7
   82    5
   93    1
   96    4
   96    7

然后我需要找到具有最低最大值的行:

82 5 2

到目前为止,我已经实现了:

close all;
clear all;
clc;

A = randi([0 100],7);

[M1,I1] = max(A,[],2);

[M1,I1]

[M2,I2] = min(M1);

[M2,I1(I2),I2]

虽然感觉像是一种解决方法,但我想知道是否有更规范的方法来做到这一点?也许是用于此特定目的的内置函数min/max 语法?

P.S.MATLAB Discord channel 上也分享了这个问题。

解决方法

find 的情况如何?

M = min(max(A,[],2));
[i,j] = find(A == M);
[M,j,i]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。