如何用C++统计一个一维数组中数字出现的次数

一个一维数组,输入10个数字,要怎么用C++统计这个数组中数字出现的个数呀,谢谢回答。

思路:桶排,定义一个数组存储每个数字出现的次数

#include <iostream>
#include <sstream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <string>
#include <cstring>
#include <vector>
#include <stack>
#include <list>
#include <limits.h>

using namespace std;

int cnt[1000010];

int main()
{


    int n = 10;
    for (int i = 1; i <= n; i++)
    {
        int x;
        cin >> x;
        cnt[x] ++;
    }
    for (int i = 1; i <= 1000000; i++){
        if (cnt[i] != 0)
        {
            cout << "数字" << i << "出现了" << cnt[i] << "次" << endl;
        }
    }


    return 0;
}