如何用matlab寻找数组前k个最大值

 时间:2024-10-13 10:23:03

1、比如我们有一个数组A。现在我们相求其最大三个值以及位置。A(:)将数组处理降为一维。然后使用sort排序,并将排序结果转置(横着显示)

如何用matlab寻找数组前k个最大值

2、sort可以有两个返回值。如图将排序后列表放入AS,将元素原有位置放入pos。如图知道最大三个元素在5,4,8位置。

如何用matlab寻找数组前k个最大值

3、我们回到原有数组A。其序号的含义解释如图,就是从最低维一层层排号。5,4,8分别圈出。

如何用matlab寻找数组前k个最大值

4、使用A(位置列表)获取这些位置上的数。如图位置列表时[8,4,5]。获取了最大的三个数。

如何用matlab寻找数组前k个最大值

5、也可以全部用程序完成。使用length(A(:))计算数组A的元素个数。sort之后,取出最后的3个,从len-2到len。

如何用matlab寻找数组前k个最大值
  • matlab中结果是什么意思?其中的e表示什么
  • matlab如何直接创建矩阵
  • matlab怎么使用if语句
  • matlab怎么取矩阵的某一行或列
  • 如何用MATLAB求平均值
  • 热门搜索
    土豆怎么做好吃又简单 紫包菜怎么做好吃 豆类大全 腿毛太长怎么办 饼的种类及做法大全 红烧螃蟹的家常做法 豌豆怎么做好吃 怎么才能成为明星 保护视力的方法 红鲫鱼怎么养