方法
用计数排序,定义两个数组,一个数组存放选票,一个数组存放在选票上对应下标候选人编号出现的次数,遍历前者,获得后者的数据,最后按照后者的数据输出排序结果
c++代码
#include<iostream>
using namespace std;
int n, m;
int ticket[2000000];
int count1[1000];
void counting_sort()
{
for (int i = 0; i < m; i++)
{
count1[ticket[i]]++;
}
for (int i = 1; i <= n; i++)
{
for (int j = 0; j < count1[i]; j++)
cout << i << " ";
}
}
int main()
{
cin >> n >> m;
for (int i = 0; i < m; i++)
{
cin >> ticket[i];
}
counting_sort();
return 0;
}