Location of maximum number in matrix??

30 次查看(过去 30 天)
%Suppose I have a matrix
A=[2 3 4;
5 6 7;
8 9 0];
%I want to Find the location of maximum number in the matrix ie of 9.
%How to find it??
c=max(A); % what to do next ?

采纳的回答

Stephen23
Stephen23 2015-4-20
编辑:Stephen23 2015-4-20
Simply use the output indices returned by max function:
>> A = [2 3 4; 5 6 7; 8 9 0];
>> [B,I] = max(A(:))
B =
9
I =
6
where I is a linear index into A:
>> A(I)
ans =
9
Note you can convert linear indices to subscript indices using the function ind2sub:
>> [R,C] = ind2sub(size(A),I)
R =
3
C =
2

更多回答(1 个)

Julia
Julia 2015-4-20
Hi,
you have to take the "double maximum", since your c gives a vector. Then you can use the find() function.
>> c=max(max(A))
>> B=find(A==c)
B is just a number. To see how Matlab uses linear indexing click the following link:

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by