Código fuente de clasificación Hill
Y luego hay un error relacionado con el programa. Sólo la persona que escribió el programa sabe cómo solucionar este error.
Si bien puedo solucionarlo, es engorroso, ¡así que comprueba por ti mismo cómo solucionar ese error!
# include & ltiostream & gt
# include & ltcstdlib & gt
# include & ltctime & gt
#Definición N 50
Utilice el espacio de nombres std
void InsertSort(int r[])
{ int x=0, y = 0;
para (int I = 1;i<n;i++)
{
int s = r[I];
int bajo = 0;
p>
int alto = I-1;
x++;
mientras(bajo & lt;=alto)
{
int mid=(bajo+alto)/2;
x++;
if(s & lt;r[mid])
{ p>
Alto=medio 1;
y++;
}
Otros
{
bajo = medio+1;
y++;
}
}
for(int j = I-1; j & gt =alto+1;i++,j-)
{
r[j+1]= r[j];
y++; p>
}
r[high+1]= s;
y++;
}
cout & lt& lt " insert Sort: ";
cout & lt& ltendl & lt& lt"* * *Para comparar"
}
void BubbleSort(int r[])
p>{ int x=0, y = 0;
for(int I = 0;i<n-1;i++)
{
for(int j = 0; j & ltn-1-I; j++)
{ i++;
if(r[j]& gt; r[j +1 ])
{
int temp = r[j];
r[j]= r[j+1];
r[j+1]= temp;
y+= 3;
}
}
}
cout & lt& lt"método de burbuja":
cout & lt& ltendl & lt& lt"* * *para comparar"
}
void ShellSort (int r[])
{
int paso = N/2;
int x=0, y = 0;
while(paso>= 1)
{
for(int I = paso;I<n;I+=tamaño del paso)
{ p>
for(int j=i-paso, s = r[I]; s & ltr[j]& amp; & ampj & gt=0;j-=paso, x++)
{
r[j+paso]= r[j];
y++;
}
r[j+ paso]= s;
y++;
}
paso/= 2;
}
cout <<"Clasificación de colinas: ";
cout <<endl <<"* * *Para comparar"
}
void SelectSort(int r[])
{
int x=0, y = 0;
for(int I = 0;i<n-1;i++)
{
int s = I;
for(int j = I+1;j & ltn ;j++ )
{
if(r[s]& gt;r[j])
{
x++;
s = j;
}
}
if (small_loc!= i)
{ p>
int temp = r[I];
r[I]= r[s];
r[s]= temp;
y+ = 3;
}
}
cout & lt& lt"Seleccionar orden:";
cout & lt& ltendl & lt& lt "* * *Para comparar"
}
int Partition(int r[], int low, int high, int d[])
{
int clave pivote = r[bajo];
int i =bajo;
int j =alto;
mientras( i<j)
{
mientras(i<Johnson & Johnson.&r[j]>tecla de pivote){
j-; p>
}
if (i<j){
r[I]= r[j];i++;d[ 1]++;
}
mientras(i<Johnson & Johnson.&r[I]<tecla pivote){
i++; /p>
if (i<j){
r[j]= r[I];j-;d [1]++;
}
r[j]= clave de pivote; d[1]++;
Return j;
}
void QuickSort(int r[], int bajo, int alto, int d[])
{
if(bajo<alto)
{
int pivot=Partición(r, baja, alta, d);
QuickSort(r, baja, pivote-1, d);
QuickSort(r, pivote +1, alto, d);
}
cout & lt& lt"Clasificación rápida: ";
cout & lt& ltendl & lt& lt"* * *A modo de comparación"
}
int main()
{
int a[N]; int d[2];
srand((unsigned) time(null));
a[N ]= rand();
insertar sort(a);
Clasificación de burbujas(a);
Clasificación de shell(a);
seleccione clasificación(a);
Clasificación rápida (a, 0, N, d);
Devuelve 0
}