#include using namespace std; const int n = 100, M = 20000; int a[n]; int b[n]; int c[M]; void counting_sort() { int i; for (i = 0; i <= M; i++) c[i] = 0; for (i = 0; i < n; i++) c[a[i]]++; for (i = 1; i <= M; i++) c[i] += c[i - 1]; for (i = n - 1; i >= 0; i--) b[--(c[a[i]])] = a[i]; for (i = 0; i < n; i++) a[i] = b[i]; } int main() { srand(time(NULL)); for (int i = 0; i < n; i++) a[i] = 1000 - i; counting_sort(); for (int i = 0; i < n; i++)cout << a[i] << " "; cout << endl; return 0; }