查找矩阵最小元素的 2 个或更多索引(行和列)

Find 2 or more indices (row and column) of minimum element of a matrix

我有这个 MATLAB 代码:

clear all;
clc;
A=[1 0 3;4 3 0;5 10 3];
[minimumelement,index]=min(min(A))

我想找到矩阵的最小元素及其索引(行和列)。手动地,我们知道最小元素为 0,索引为 (1,2) 和 (2,3)。现在使用上面的代码我无法生成索引 (1,2) 和 (2,3)。任何人都知道如何找到矩阵的最小元素的 2 个或更多索引(行和列)?

你可以使用 find():

[rows, columns] = find(A == min(min(A)));

此外,您还可以指定要查找的匹配项数量:

Nmatches = 1;
[rows, columns] = find(A == min(min(A)), Nmatches);

为了完整起见,您还可以使用 'first' 或 'last' 指定 要查找的 匹配项,如第一个或最后 N 个匹配项旗帜.