Anda di halaman 1dari 8

METODOS DE ORDENACION Y BUSQUEDA

Mtodo de la Burbuja
Funciona revisando cada elemento de la lista que va a ser ordenada con el
siguiente, intercambindolos de posicin si estn en el orden equivocado. Es
necesario revisar varias veces toda la lista hasta que no se necesiten ms
intercambios, lo cual significa que la lista est ordenada. Tambin es conocido
como el mtodo del intercambio directo. Dado que solo usa comparaciones para
operar elementos, se lo considera un algoritmo de comparacin, siendo el ms
sencillo de implementar.

El problema que genera el mtodo son las mltiples comparaciones que para
listas mayores de elementos se realiza un sobre uso del procesamiento y mal
uso de recursos.
Mtodo de Insercin
El ordenamiento por insercin (insertion sort en ingls) es una manera muy
natural de ordenar para un ser humano, y puede usarse fcilmente para ordenar
un mazo de cartas numeradas en forma arbitraria. Requiere O(n) operaciones
para ordenar una lista de n elementos.

Inicialmente se tiene un solo elemento, que obviamente es un conjunto


ordenado. Despus, cuando hay k elementos ordenados de menor a mayor, se
toma el elemento k+1 y se compara con todos los elementos ya ordenados,
detenindose cuando se encuentra un elemento menor (todos los elementos
mayores han sido desplazados una posicin a la derecha) o cuando ya no se
encuentran elementos (todos los elementos fueron desplazados y este es el ms
pequeo). En este punto se inserta el elemento k+1 debiendo desplazarse los
dems elementos.
Mtodo de Seleccin Directa
El ordenamiento por seleccin (Selection Sort en ingls) es un algoritmo de
ordenamiento que requiere O(n^2) operaciones para ordenar una lista de n
elementos. Su funcionamiento es el siguiente:
Buscar el mnimo elemento de la lista
Intercambiarlo con el primero
Buscar el mnimo en el resto de la lista
Intercambiarlo con el segundo
Mtodo Shell
El ordenamiento Shell (Shell sort en ingls) es un algoritmo de ordenamiento. El
mtodo se denomina Shell en honor de su inventor Donald Shell. Su
implementacin original, requiere O(n2) comparaciones e intercambios en el
peor caso. Un cambio menor presentado en el libro de V. Pratt produce una
implementacin con un rendimiento de O(n log2 n) en el peor caso. Esto es mejor
que las O(n2) comparaciones requeridas por algoritmos simples pero peor que
el ptimo O(n log n). Aunque es fcil desarrollar un sentido intuitivo de cmo
funciona este algoritmo, es muy difcil analizar su tiempo de ejecucin.

El algoritmo Shell sort mejora el ordenamiento por insercin comparando


elementos separados por un espacio de varias posiciones. Esto permite que un
elemento haga "pasos ms grandes" hacia su posicin esperada. Los pasos
mltiples sobre los datos se hacen con tamaos de espacio cada vez ms
pequeos. El ltimo paso del Shell sort es un simple ordenamiento por insercin,
pero para entonces, ya est garantizado que los datos del vector estn casi
ordenados.
Mtodo Quicksort
El algoritmo divide los n elementos de la lista a ordenar en dos partes o
particiones separadas por un elemento: una particin izquierda, un elemento
central denominado pivote, y una particin derecha. La particin se hace de tal
forma que todos los elementos de la primera sublista (particin izquierda) son
menores que todos los elementos de la segunda sublista (particin derecha). Las
dos sublistas se ordenan entonces independientemente.
Mtodo de Bsqueda Binaria
La bsqueda binaria consiste en localizar el trmino buscado comparndolo con
la mediana del conjunto de elementos previamente ordenados, reduciendo as
sucesivamente el intervalo de bsqueda.
Ejercicios

1. Cul es la diferencia entre ordenacin por intercambio y ordenacin por el


mtodo de la burbuja?

2. Un vector contiene los elementos mostrados a continuacin. Los primeros dos


elementos se han ordenado utilizando un algoritmo de insercin. Cul ser el
valor de los elementos del vector despus de tres pasadas ms del algoritmo?
3 13 8 25 45 23 98 58

3. Dada la siguiente lista


47 3 21 32 56 92
Despus de dos pasadas de un algoritmo de ordenacin, el array se ha quedado
dispuesto as
3 21 47 32 56 92
Qu algoritmo de ordenacin se est utilizando (seleccin, burbuja o
insercin)? Justifique la respuesta.

4. Un array contiene los elementos indicados ms abajo. Utilizando el algoritmo


de ordenacin Shell cuantas las pasadas e intercambios que se realizan para su
ordenacin.
8 43 17 6 40 16 18 97 11 7

5. Partiendo del mismo array que en el Ejercicio 4, cuente las particiones e


intercambios que realiza el algoritmo de ordenacin quicksort para su
ordenacin.