ADD file via upload

master
pmkfqw2gu 4 years ago
parent 744a0ec9cb
commit 9236545a7f

@ -0,0 +1,62 @@
#include<stdio.h>
#include<string.h>
#define N 14 //<2F><><EFBFBD><EFBFBD><E9B3A4>
#define D 14 //<2F><><EFBFBD>λ<EFBFBD><CEBB>
int GetDigit(int M, int i) //ȡ<><C8A1><EFBFBD><EFBFBD>M<EFBFBD>ĵ<EFBFBD><69><CEBB>
{
while(i > 1)
{
M /= 10;
i--;
}
return M % 10;
}
void RadixSort(int num[], int len)
{
int i, j, k, l, digit;
int allot[10][N]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
memset(allot, 0, sizeof(allot));//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
for(i = 1; i <= D; i++)
{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧλ<D3A6><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBA1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
for(j = 0; j < len; j++)
{
digit = GetDigit(num[j], i);
k = 0;
while(allot[digit][k])
k++;
allot[digit][k] = num[j];
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9A1B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
l = 0;
for(j = 0; j < 10; j++)
{
k = 0;
while(allot[j][k] > 0)
{
num[l++] = allot[j][k];
k++;
}
}
//ÿ<>η<EFBFBD><CEB7><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9A1B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һλ<D2BB><CEBB><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>
memset(allot, 0, sizeof(allot));
}
}
int main()
{
int num[N] = {22, 34, 3, 32, 82, 55, 89, 50, 37, 5, 64, 35, 9, 70};
RadixSort(num, N);
for(int i = 0; i < N; i++)
printf("%d ", num[i]);
printf("\n");
return 0;
}
Loading…
Cancel
Save