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

百度上有人提问过这个问题,但是按回答的方法我没有运行出来,所以请大家帮忙,并解释的仔细一些。谢谢

代码如下:

int min(int a[], int number) 

    int min=a[0];

    int i=0;

    for(int i=0;i<number;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))

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-05-16
>> 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本回答被网友采纳
第2个回答  2011-09-13
假设你要求的数组是A

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

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

麻烦问一下,A1,row1 是指的什么??

请教高手:matlab中如何求一个数组的最小值的下标?
[A1,row1]=min(A);row=min(row1);[minV,column]=min(A1);这样你得到的row和column就是这个数组A的最小值的下标,而minV则是这个最小值

如何用Matlab求一个数组下标的值?
1、下标法(subscripts)A(ii,jj):其中ii和jj可以是一维向量、标量、“:”号或者“end”比如:A(2:3,3:-1:1)表示引用数组中的2~3行,3~1列对应的元素 A(:,end)表示引用最后一列元素,“:”表示所有列或行,“end”表示最后一列或列,“end-n”表示倒数第n行或列 A(1,end-1)表示引用...

如何获取matlab数组中的下标?
matlab的find()函数可以找出参数中非零元素的索引(即下标),因此获取矩阵中某个元素的下标的实现方法为:在matlab命令窗口输入find()函数。具体应用举例如下:1、在matlab命令窗口输入一个示例矩阵:A = [1 2 3;3 4 5;5 6 7],输入及显示如下:2、继续在命令窗口输入:[m,n] = find(A==2...

matlab一组数据里面最小值,有没有函数可以直接找出来?
1、首先在电脑中打开matlab,利用内联函数建立函数表达式,如下图所示。2、然后求解区间内最小值,返回最小值横坐标,如下图所示。3、接着返回横坐标和最小值,如下图缩小。4、然后建立函数表达式,求解,返回横坐标,如下图所示。5、最后返回横坐标和最小值,如下图所示,就完成了。

...在n*m的数组中,如何用matlab找出最大最小值 并且能求到最大最小值...
可以使用find函数,找到相应的下标 同时使用max和min函数,找到矩阵中的最大值和最小值。下图标明了方法:

matlab,编写函数[y,p]=min1(x),找出向量x中的最小值及它所在的位置...
求最小值及其下标 function [min,b]=getmin(A)%min和b分别是最小值和下标数组 n=length(A);%提取输入数组长度,要是一维数组 min=A(1);j=1;%j是下标数组的下标,最小为1,肯定有最小啊 for i=1:n%这个循环求最小值 if A(i)<min min=A(i);end end for i=1:n%这个循环求下标...

matlab 如何提取数组的下标!?
直接利用find函数,举个例子:rng('default')A=rand(3,5)A = 0.7060 0.0462 0.6948 0.0344 0.7655 0.0318 0.0971 0.3171 0.4387 0.7952 0.2769 0.8235 0.9502 0.3816 0.1869 L=A>=0.5;find(L)ans = 1 6 7 9 13 14 ...

matlab中怎么从数组中选出最小的10个数,并显示位置。
先排序,sort,可以自定义升序ascend还是降序descend,然后去后10个或者前10个数。获取下标也不难,help下这些函数的用法就得到了。

MATLAB如何取数组中非零的最小值,数组里面都是正数。
代码如下:a=magic(6);disp(a)for i=1:1:6 B=a(i,:);disp(B)[b,ind]=min(B(find(B~=0)));disp(b)disp(ind)for j=1:1:6 c=100;disp(c)end end

Matlab中,如何求出一组数中的最大值和最小值
把a,px放在一个数组里。a(i)表示第i个数 [maxs index]=max(a)maxs是最大值 index是第几个

相似回答