Algoritmos_de_ordenacion_implementacion
Páginas: 4 (982 palabras)
Publicado: 19 de septiembre de 2015
Selección
int array[N];
int i,j,menor,aux;
// Dar valores a los elementos del array
for(i=0;i
for(j=i+1,menor=i;j
aux=array[i]; // Se intercambian los elementos
array[i]=array[menor]; // de lasposiciones i y menor
array[menor]=aux; // usando una variable auxiliar.
}
Burbuja
int array[N];
int i,j,aux;
// Dar valores a los elementos del array
for(i=0;i
aux=array[j+1]; // Se intercambian los elementos array[j+1]=array[j]; // de las posiciones j y j+1
array[j]=aux; // usando una variable auxiliar.
}
Inserción directa
int array[N];
int i,j,aux;
// Dar valores a los elementos del array
for(i=1;i
aux=array[i];
for(j=i-1;j>=0;j--) // Se recorre la sublista de atrás a adelante para buscar
{ // lanueva posición del elemento i.
if(aux>array[j]) // Si se encuentra la posición:
{
array[j+1]=aux; // Ponerlo
break; // y colocar el siguiente número.
}
else// si no, sigue buscándola.
array[j+1]=array[j];
}
if(j==-1) // si se ha mirado todas las posiciones y no se ha encontrado la correcta
array[0]=aux; // es que la posición es alprincipio del todo.
}
Shell
int array[N];
int salto,cambios,aux,i;
for(salto=N/2;salto!=0;salto/=2) // El salto va desde N/2 hasta 1.
for(cambios=1;cambios!=0;) // Mientras se intercambie algúnelemento:
{
cambios=0;
for(i=salto;i
{
aux=array[i]; // se...
Leer documento completo
Regístrate para leer el documento completo.