#include <iostream>
#include <cmath>
#include <algorithm>
#include "memory.h"
#include <cstdio>
#include <stack>
#include <iterator>
#include <utility>
#include <cassert>
#include <exception>
#include <vector>
#include <typeinfo>
using namespace std;
#define N 10
void SortBaseNumber(int a[])
{
assert(a != NULL);
int count[N];
int b[N];
memset(count,0,sizeof(count));
for (int i = 0; i < N; i++)
count[a[i]]++;
count[0]--;
for (int i = 1; i < N; i++)
count[i] += count[i - 1];
for (int i = N - 1; i >= 0; i--)
{
b[count[a[i]]] = a[i];
count[a[i]]--;
}
for (int i = 0; i < N; i++)
cout<<b[i]<<ends;
cout<<endl;
}
int main()
{
int a[N] = {0,2,3,2,4,2,1,2,9,8};
SortBaseNumber(a);
for (int i = 0; i < N; i++)
cout<<a[i]<<ends;
cout<<endl;
}
基数排序
最新推荐文章于 2025-01-20 22:27:40 发布