具体代码#include<bits/stdc++.h>
using namespace std;
const int N=1e6;
int a[N];
int getMax(int a[],int n){
int mx=-1;
for(int i=0;i<n;i++){
mx=max(mx,a[i]);
}
return mx;
}
void RadixSort(int a[],int n){
int mx=getMax(a,n);
for(int i=1;mx/i>0;i*=10){
int cn[10]={0},t[n];
for(int j=0;j<n;j++){
int k=(a[j]/i)%10;
cn[k]++;
}
for(int j=1;j<10;j++){
cn[j]+=cn[j-1];
}
for(int j=n-1;j>=0;j--){
int k=(a[j]/i)%10;
t[cn[k]-1]=a[j];
cn[k]--;
}
for(int j=0;j<n;j++){
a[j]=t[j];
}
}
}
void print(int a[],int n){
for(int i=0;i<n;i++){
cout<<a[i]<<" ";
}
cout<<endl;
}
int main(){
int n;
cin>>n;
for(int i=0;i<n;i++)cin>>a[i];
RadixSort(a,n);
print(a,n);
return 0;
}