metodo radix

sandra
05 de Diciembre del 2004
por favor alguien me hiciera el favor de porporcionarme algun programa en turbo c con el metodo de ordenacion radix con estructuras de datos

gracias

noel solw
05 de Diciembre del 2004
// program k4_12.CPP - page 73
// radix sort.
// c++ exercices book - dr. gershon kagan (first edition : 2001)
// written in Borland CPP ver 3.1

#include <conio.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdlib.h>

#define MAX 18
#define MAX_DIGIT 3

void Show(int *a)
{
for(int i = 0; i < MAX; i++)
cout << setw(4) << a[i];
cout << endl;
} // SHOW

void Init(int *a)
{
for(int i = 0; i < MAX; i++)
a[i] = random(999) + 1;
} // INIT

void Swap(int &a,int &b)
{
int c = a;
a = b;
b = c;
} // SWAPS INTEGER

void RadixSort(int *a) // for integer values MAX_DIGIT lenght
{
int aux[10][MAX],index[MAX];
for(int i = 0; i < 10; i++)
{
index[i] = 0;
for(int j = 0; j < MAX; j++)
aux[i][j] = 0;
}
for(int z = 0; z < MAX_DIGIT; z++)
{
for(i = 0; i < MAX; i++)
{
int digit = a[i];
for(int x = z; x; x--)
digit /= 10;
digit %= 10;
aux[digit][index[digit]++] = a[i];
}
int k = 0;
for(i = 0; i < 10; i++)
{
int j = 0;
while(aux[i][j])
{
a[k++] = aux[i][j];
aux[i][j++] = 0;
}
index[i] = 0;
}
Show(a);
}
cout << endl;
} // RADIX SORT

void main()
{
clrscr();
randomize();
int a[MAX];
cout << "radix sort : " << endl << endl;
Init(a);
Show(a);
cout << endl;
RadixSort(a);
Show(a);
cout << endl << "end of program - good bye ! ! !n";
getch();
} // MAIN


Ptricio Rios
05 de Diciembre del 2004
Alguien tiene el metodo de ordenamiento Radix Sort en PHP