Páginas

lunes, 27 de agosto de 2012

Ordenamiento por selección


Teoría


En este algoritmo el objetivo es ordenar una serie de números, buscando el menor elemento de la lista e intercambiándolo con el primero, se repite estos pasos con el resto de la lista hasta que la lista completa este ordenada.

Caso de estudio


Imagine que quiere ordenar un estante de libros, por tamaño de menor a mayor, tiene 5 libros con los siguiente tamaños:
  1. 12 cm
  2. 15 cm
  3. 10 cm
  4. 20 cm
  5. 13 cm

Acontinuacion se muestran los pasos necesarios para ordenar la lista.

1. Se inicia comparando los primeros dos libros de la lista, para determinar el de menor tamaño.

1.png

2. Como el menor es el libro de 12 cm se descarta el de 15 cm y se continua comparando con el tercer libro de la estante en este caso el de 10 cm.

2.png

3. Como el libro de 10 cm es el menor se descarta el de 12 cm y se continua comparando con el cuarto libro en este caso el de 20 cm.

3.png

4. Como el menor sigue siendo el de 10 cm se descarta el libro de 20 cm y se continua comparando con el ultimo libro , el de 13 cm.

4.png

5.Como el libro de 10 cm tiene el menor tamaño se cambia de posición con el primer libro.
5.png
6. Como el menor libro ya esta ubicado en su lugar, se debe continuar comparando con los libros restantes, se comparan el segundo y tercer libro.

sel_6.png

7. El menor es el libro de 12 cm, se descarta el de 15 cm y se continua comparando con el siguiente libro, de 20 cm.

sel_7.png

8. Como el menor sigue siendo el libro de 12 cm, se descarta el de 20 cm y se compara con el ultimo libro, de 13 cm.

sel_8.png

9. El menor es el libro de 12 cm, al no tener mas libros para comparar se cambia de lugar con el segundo libro, el de 15 cm,
9.png
10.El primer y segundo libro ya estan ubicados, se continua ordenando los libros restantes, se compara el tercer y cuarto libro.

10.png

11.Como el menor es el libro de 15 se descarta el de 20 cm y se continua comparando con el ultimo libro, de 13 cm.

11.png
12. Al ser el libro de 13 el menor y no tener mas libros para comparar, se cambia de lugar con el tercer libro.
12.png
13. Ya estan ordenados los primeros 3 libros, falta comparar los ultimos dos libros.

13a.png

14. como el menor es el libro de 15 se cambia de posición con el cuarto libro el de 20.
15a.png
15. De esta manera se organizan todos los libros del estante.

final.png


Algoritmo
Para ordenar una lista de números(sin repetirse) de menor a mayor usando "Ordenamiento por selección".
  • Buscar el mínimo elemento de la lista
  • Intercambiarlo con el primero
  • Buscar el mínimo en el resto de la lista
  • Intercambiarlo con el segundo (Primero de la sub-lista)
  • Continuar hasta que no queden elementos con los cuales comparar



Enlaces recomendados


Libros:

  • Ejemplo completo y muy gráfico [Ingles]

Java 6 Illuminated: An Active Learning Approach, Julie Anderson y Hervé Franceschi, Pag. 510 a 515.

No hay comentarios:

Publicar un comentario