C++中怎么找出一维数组中最小的两个数

 我来答
传薪网络
2015-12-01 · TA获得超过1354个赞
知道小有建树答主
回答量:635
采纳率:92%
帮助的人:235万
展开全部

  可以先排序再输出最小的两个数

  也可以采用下面的方法,不用排序直接给出最小的两个数

  思路:数组中数和两个数依序比较,比这两个中的一个小,则与其交换

void getmin(int array[],int arraylen,int out[],int outlen)
{//outlen应该为2
    int i,j;
    for(i=0;i<outlen;i++)out[i] = 0x7FFFFFFF;//这是一个最大整数值
    for(i=0;i<arraylen;i++){//遍历数组
        for(j=0;j<outlen;j++){//遍历最小数列表
            if(array[i]<out[j]){//array中的数更小
                out[j] = array[i];//记录该数
                break;
            }
            //如果out中的数小,则看看下一个out数会不会比这个大
        }
    }
}

  这个方法可以适用于查找一维数组中最小的n个数

骑车到处逛
2010-12-02 · TA获得超过160个赞
知道小有建树答主
回答量:217
采纳率:0%
帮助的人:121万
展开全部
先从小到大排序,再输出开始两个
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yerenyo
2010-12-03
知道答主
回答量:69
采纳率:0%
帮助的人:0
展开全部
用两个数去记录,查找的最小的和第二小的数~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式