在有序数组里面C语言c++找众数C语言基础

#include <iostream>
#include <algorithm>
using namespace std;

int cnt[100000000];
int main()
{
    int same=1;
    int a[10];
    int maxl=0;
    int temp;
    int vex;
    for(int i=0;i<10;i++)
    {
        cnt[i]=0;
    }
    for(int i=0;i<10;i++)
    {
        cin>>a[i];
        cnt[a[i]]++;
        if(maxl<cnt[a[i]])
        {
            maxl=cnt[a[i]];
        }
    }
    for(int i=0;i<9;i++)
    {
        if(cnt[a[i]]!=cnt[a[i+1]])
        {
            same=0;
            break;
        }
    }
    if(same)
    {
        cout<<"没有众数"<<endl;
        return 0;
    }
    int n=10;
    for(int i=0;i<n;i=i+cnt[a[i]])
    {
        if(cnt[a[i]]==maxl)
        {
            cout<<a[i]<<" ";
        }
    }

    return 0;

}

以上代码在c++可以直接运行出结果。

遇到找重复的数的时候,可以考虑一下双重数组;


版权声明:本文为m0_63605756原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。