Consiste en ercorrer un vector desde la primera posición hasta n-1, en cada iteración se busca encontrar el elemento más pequeño, de tal forma que después de la primera iteración en la posición 0 este el elemento más pequeño de todo el vector; en la segunda iteración el segundo elemento más pequeño y así sucesivamente hasta ordenar todos los datos.
Este método no es el más eficiente, pero es uno de lo más fáciles de implementar. En algunos casos, a este método se le nombra erroneamente "Metodo de la burbuja".
int i,j,aux;
// Dar valores a los elementos del array
for(i=1;i
{
// Se intenta añadir el elemento i.
aux=array[i];
for(j=i-1;j>=0;j--) // Se recorre la sublista de atrás a adelante para buscar
{ // la nueva 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 al principio del todo.
}
Método de ordenación por selección directa
domingo, mayo 07, 2006
Suscribirse a:
Enviar comentarios (Atom)
2 comentarios:
Quiere decir que algunos confunden el metodo de la burbuja con el metodo de seleccion?
pues sinceramente los 2 metodos tienes un semejanza
pero para no seguir confundiendoce
haa y kreo k el programa tiene un error en el primer for por k no esta terminado
Publicar un comentario en la entrada