Vous êtes sur la page 1sur 4

ALGORITMICA Y ESTRUCTURA DE DATOS

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.


EJERCICIO PLANTEADO
El ejercicio anterior (arreglo original), resolverlo mediante el mtodo de insercin.
Compare la cantidad de pasos realizados por ambos e indique cul es el ms rpido.
Respuesta:
El ms rpido es el Mtodo de Insercin, porque realiza menos comparaciones

RESOLUCIN CON VARIABLES

/ Definir variables
nota: array
j,x, z, ordena: enteros
INICIO
/ ingreso de los 5 notas
Para j=1 hasta 5 hacer
ALGORITMICA Y ESTRUCTURA DE DATOS
Leer nota[j]
Fin Para
/ Ordenamiento mediante mtodo insercin
Para x = 2 hasta 5 hacer
ordena = nota[x]
z = x-1
Mientras ((z> 0) y (nota[z] > ordena)) hacer
nota[z+1] = nota[z]
z = z 1
Fin mientras
nota[z+1]= ordena
Fin para
/ imprimir notas ordenadas
Para j=1 hasta 5 hacer
Escribir nota[j]
Fin Para
FIN
1. La variable nota es de tipo matriz.
2. Las variables j, x, zsern utilizadas como contadores acumulativos de uno en uno.
3. La variable ordena ser utilizada para el intercambio.
4. El pseudocdigo se divide en:
o Definicin o declaracin de variables.
o Un procedimiento de ingreso de valores (notas) en un array o matriz.
o Un procedimiento de ordenamiento de los valores ingresados al array,
utilizando el mtodo insercin.
o Un procedimiento de impresin de los valores ya ordenados de la matriz
nota.
5. En el procedimiento de Ordenamiento utilizando el mtodo de Insercin se define
lo siguiente:
- La variable x es la encargada de contar el nmero de pasadas.
- La variable z es la encargada de posicionar el puntero en la nota o elemento con
los que se comparar.
- La variable ordena carga temporalmente el valor de la nota actual para cuando
se produzca el intercambio no se pierda el valor de la nota[x] y este se cargue a
la nota [y].
ALGORITMICA Y ESTRUCTURA DE DATOS
- En la primera pasada se compara:
o Se compara el segundo con el primero. Si el segundo es mayor que el
primero, se cambia. Si no, no cambia de posicin.
- En la segunda pasada o recorrido se compara:
o Se compara el tercero con el segundo. Si el tercero es mayor que el
segundo, se cambia. Sino, no cambia de posicin.
o Se compara el segundo con el primero. Si el segundo es mayor que el
primero se cambia. Sino, no cambia de posicin.
- En la tercera pasada o recorrido se compara:
o Se compara el cuarta con el tercero. Si el cuarto es mayor que el
tercero, se cambia. Si no, no cambia de posicin.
o Se compara el tercero con el segundo. Si el tercero es mayor que el
segundo, se cambia. Si no, no cambia de posicin.
o Se compara el segundo con el primero. Si el segundo es mayor que el
primero se cambia. Si no, no cambia de posicin.
- En la cuarta pasada o recorrido se compara:
o Se compara el quinto con el cuarto. Si el quinto es mayor que el cuarto,
se cambia. Si no, no cambia de posicin.
o Se compara el cuarta con el tercero. Si el cuarto es mayor que el
tercero, se cambia. Si no, no cambia de posicin.
o Se compara el tercero con el segundo. Si el tercero es mayor que el
segundo, se cambia. Si no, no cambia de posicin.
o Se compara el segundo con el primero. Si el segundo es mayor que el
primero se cambia. Si no, no cambia de posicin.
- Resultado de estos recorridos y cambios de lugares de los valores de la matriz
nota estos valores estn ordenados en forma ascendente.

Ordenamiento usando Mtodo INSERCIN
Notas Ingresadas
15 16 7 19 12
Primera Pasada
15 16 7 19 12
Segunda Pasada
15 7 16 19 12
7 15 16 19 12
Tercera Pasada
7 15 16 19 12
7 15 16 19 12
7 15 16 19 12
Cuarta Pasada
7 15 16 12 19
7 15 12 16 19
ALGORITMICA Y ESTRUCTURA DE DATOS


Anlisis del algoritmo.
Estabilidad: Este algoritmo nunca intercambia registros con claves iguales. Por lo
tanto es estable.
Requerimientos de Memoria: Una variable adicional para realizar los intercambios.
Tiempo de Ejecucin: Para una lista de n elementos el ciclo externo se ejecuta n-1
veces. El ciclo interno se ejecuta como mximo una vez en la primera iteracin, 2
veces en la segunda, 3 veces en la tercera, etc. Esto produce una complejidad O(n
2
).
Ventajas:
Fcil implementacin.
Requerimientos mnimos de memoria.

7 12 15 16 19
7 12 15 16 19
Ordenados en forma ascendente
7 12 15 16 19

Vous aimerez peut-être aussi