matlab数组中求最大的几个数并返回其位置现有一个1*10000的矩阵,要求其最大的前n个数.并且返回其在矩阵中的位置.举例如下.a=[3,15,6,21,18,2,18,19,1,4,7,29,21 ,23 ,29 ,23,14,6,9 ,29 ,31],求其最大的前4个
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/29 01:43:30
![matlab数组中求最大的几个数并返回其位置现有一个1*10000的矩阵,要求其最大的前n个数.并且返回其在矩阵中的位置.举例如下.a=[3,15,6,21,18,2,18,19,1,4,7,29,21 ,23 ,29 ,23,14,6,9 ,29 ,31],求其最大的前4个](/uploads/image/z/3988244-20-4.jpg?t=matlab%E6%95%B0%E7%BB%84%E4%B8%AD%E6%B1%82%E6%9C%80%E5%A4%A7%E7%9A%84%E5%87%A0%E4%B8%AA%E6%95%B0%E5%B9%B6%E8%BF%94%E5%9B%9E%E5%85%B6%E4%BD%8D%E7%BD%AE%E7%8E%B0%E6%9C%89%E4%B8%80%E4%B8%AA1%2A10000%E7%9A%84%E7%9F%A9%E9%98%B5%2C%E8%A6%81%E6%B1%82%E5%85%B6%E6%9C%80%E5%A4%A7%E7%9A%84%E5%89%8Dn%E4%B8%AA%E6%95%B0.%E5%B9%B6%E4%B8%94%E8%BF%94%E5%9B%9E%E5%85%B6%E5%9C%A8%E7%9F%A9%E9%98%B5%E4%B8%AD%E7%9A%84%E4%BD%8D%E7%BD%AE.%E4%B8%BE%E4%BE%8B%E5%A6%82%E4%B8%8B.a%3D%5B3%2C15%2C6%2C21%2C18%2C2%2C18%2C19%2C1%2C4%2C7%2C29%2C21+%2C23+%2C29+%2C23%2C14%2C6%2C9+%2C29+%2C31%5D%2C%E6%B1%82%E5%85%B6%E6%9C%80%E5%A4%A7%E7%9A%84%E5%89%8D4%E4%B8%AA)
matlab数组中求最大的几个数并返回其位置现有一个1*10000的矩阵,要求其最大的前n个数.并且返回其在矩阵中的位置.举例如下.a=[3,15,6,21,18,2,18,19,1,4,7,29,21 ,23 ,29 ,23,14,6,9 ,29 ,31],求其最大的前4个
matlab数组中求最大的几个数并返回其位置
现有一个1*10000的矩阵,要求其最大的前n个数.并且返回其在矩阵中的位置.举例如下.a=[3,15,6,21,18,2,18,19,1,4,7,29,21 ,23 ,29 ,23,14,6,9 ,29 ,31],求其最大的前4个数,分别是[29,29,29,31],要返回的结果是
[29,29,29,31
12,15,20,21].也可以是[29,12;29,15;29,20;31,21]
明白了.
matlab数组中求最大的几个数并返回其位置现有一个1*10000的矩阵,要求其最大的前n个数.并且返回其在矩阵中的位置.举例如下.a=[3,15,6,21,18,2,18,19,1,4,7,29,21 ,23 ,29 ,23,14,6,9 ,29 ,31],求其最大的前4个
可以利用sort函数给数列a从小到大排列,找前几个最大的.如下:
[b,i]=sort(a).b为从小到大的数字,i为对应位置.要找前3个,如下输入:
>> a=[3,15,6,21,18,2,18,19,1,4,7,29,21 ,23 ,29 ,23,14,6,9 ,29 ,31];
>> [b,i]=sort(a)
b =
Columns 1 through 12
1 2 3 4 6 6 7 9 14 15 18 18
Columns 13 through 21
19 21 21 23 23 29 29 29 31
i =
Columns 1 through 12
9 6 1 10 3 18 11 19 17 2 5 7
Columns 13 through 21
8 4 13 14 16 12 15 20 21
>> b(19:21)
ans =
29 29 31
>> i(19:21)
ans =
15 20 21