matlab中如何求一个数组的最小值的下标?

2024-11-17 17:55:40
推荐回答(3个)
回答1:

代码如下:

int min(int a[], int number) 

    int min=a[0];

    int i=0;

    for(int i=0;i

    {

       if(min>a[i])

       {

           min=a[i];

       }

    }

    return min;

}

扩展资料:

注意事项

Python的min函数返回列表中的最小的项。

返回列表中最小的项的索引

def indexofMin(arr):

    minindex = 0

    currentindex = 1

    while currentindex < len(arr):

        if arr[currentindex] < arr[minindex]:

            minindex = currentindex

        currentindex += 1

    return minindex

arr = [3,9,2,1]

print(indexofMin(arr))

回答2:

>> a=[2:6;1 2 -2 4 5]

a =

2 3 4 5 6
1 2 -2 4 5

>> [x,y]=min(a)%%默认是求每一列的最小值,y是每列的最小值的下标(单下标)

x =

1 2 -2 4 5

y =

2 2 2 2 2

>> [x,y]=min(a(:))%%a(:)是将a距阵变为一个列向量

x =

-2

y =

6

>> [i,j]=ind2sub(size(a),y)%%%将单下标转换为双下标,即行、列

i =

2

j =

3

>> yy=sub2ind(size(a),i,j)%%和上面的相反

yy =

6

回答3:

假设你要求的数组是A

[A1,row1]=min(A);
row=min(row1);
[minV,column]=min(A1);

这样你得到的row和column就是这个数组A的最小值的下标,而minV则是这个最小值