Вы находитесь на странице: 1из 22

MÉTODO DE ORDENAMIENTO

POR INTERCALACIÓN
Integrantes de Equipo:
Jennifer García Estévez
Alejandra Zamora Pérez
Guadalupe Solares Sacramento
• Es un algoritmo que también es conocido como Merge sort o
combinación, debido que combina (intercala) dos estructuras
previamente ordenadas, este es destacado por su técnica divide y
vencerás.

• Método Intercalación: se combinan los sub-archivos ordenados en


una sola ejecución. Es un proceso bastante utilizado en sistemas de
actualización. También es la única forma que hay para el
ordenamiento de archivos, debido a la imposibilidad física de
almacenarlos en memoria y a limitaciones en el tiempo, por la
cantidad de elementos a ordenar.
Fue desarrollado en 1945 por John Von Neumann.
Para el cual incorporo dos ideas principales para mejorar su
tiempo de ejecución:

 Una lista pequeña necesitará menos pasos para ordenarse


que una lista grande.
 Se necesitan menos pasos para construir una lista
ordenada a partir de dos listas también ordenadas, que a
partir de dos listas desordenadas. Por ejemplo, sólo será
necesario entrelazar cada lista una vez que están
ordenadas.
El ordenamiento por intercalación o mezcla funciona de la
siguiente manera:

 Si la longitud de la lista es 0 ó 1, entonces ya está


ordenada.
 En otro caso:
 Dividir la lista desordenada en dos sublistas de
aproximadamente la mitad del tamaño.
 Ordenar cada sublista recursivamente aplicando el
ordenamiento por mezcla.
 Mezclar las dos sublistas en una sola lista ordenada.
 En este método de ordenamiento existen dos archivos
con llaves ordenadas, los cuales se mezclan para formar
un solo archivo.
 La longitud de los archivos puede ser diferente.
 El proceso consiste en leer el registro de cada archivo y
compararlos, el menor es almacenado en el archivo de
resultado y el otro se compara con el siguiente elemento
del archivo si existe.
 El proceso se repite hasta que alguno de los archivos
quede vacío y los elementos del otro archivo se
almacenen.
EJEMPLO

 Supongamos los siguientes vectores


previamente ordenados, el nuevo vector
contendra la cantidad de elementos de ambos

3 5 8 12 17 1 6 9 24

Se comparan los primeros elementos 3 y 1, el menor se copia


1

Se copia el valor del vector B y los subindices K y J,


se mueven una posición

3 5 8 12 17 1 6 9 24

Se comparan los siguientes valores 3 y 6, se mueve


el menor
1 3
• Se copia el valor del vector A y los subindices K e I, se mueven una posición

• 3 5 8 12 17 1 6 9 24

• Se comparan los siguientes valores 5 y 6, se mueve el menor


1 3 5
Se copia el valor del vector A y los subindices K e I,
se mueven una posición

3 5 8 12 17 1 6 9 24

Se comparan los siguientes valores 8 y 6, se mueve


el menor
1 3 5 6

Se copia el valor del vector B y los subindices K y J,


se mueven una posición

3 5 8 12 17 1 6 9 24

Se comparan los siguientes valores 8 y 9, se mueve


el menor
1 3 5 6 8

Se copia el valor del vector A y los subindices K e I,


se mueven una posición

3 5 8 12 17 1 6 9 24

Se comparan los siguientes valores 12 y 9, se mueve


el menor
1 3 5 6 8 9

Se copia el valor del vector B y los subindices K y J,


se mueven una posición

3 5 8 12 17 1 6 9 24

Se comparan los siguientes valores 12 y 24, se


mueve el menor
1 3 5 6 8 9 12

Se copia el valor del vector A y los subindices K e I, se mueven


una posición

3 5 8 12 17 1 6 9 24

Se comparan los siguientes valores 17 y 24,


se mueve el menor
De igual forma se sigue con los
siguientes valores hasta completar el
recorrido

1 3 5 6 8 9 12 17 24

El proceso termina cuando uno de los


dos subindices I o J, llega hasta la
longitud del vector.
En ese momento se termina de copiar los
siguientes valores del vector
El algoritmo de ordenación por intercalación simple
requiere una exploración o búsqueda secuencial
para localizar la posición de un elemento en la
sublista ordenada. Si en lugar de considerar una
búsqueda secuencial se realizara una búsqueda
binaria se mejoraría considerablemente el algoritmo
y se aumentaría la velocidad de ejecución. Esta
modificación se conoce como método de
intercalación binaria.
El método más sencillo, pero menos eficaz, consiste en
colocar una lista detrás de la otra y luego ordenarla. Sin
embargo este método no aprovecha la propiedad de que los
vectores A y B ya están ordenados, por ello debe recurrir
normalmente al sistema de mezcla el cual cosiste en comparar
los dos primeros elementos de los vectores (A y B) y enviar al
menor al tercer vector, continuando con el elemento
comparado pero no enviado con el siguiente elemento del
vector que contiene al elemento menor comparado
anteriormente y así sucesivamente. Una vez que se terminaron
los elementos de un vector, se procede a vaciar los elementos
restantes del otro vector.
El ordenamiento de mezcla puede ser
utilizado para:

● Para correr cintas magnéticas como


dispositivos de entrada y salida,
requiere muy poca memoria, y la
memoria que requiere no depende del
numero de grabaciones.
Los algoritmos de ordenamiento
de mezcla permitieron a juegos
de datos grandes para ser
clasificados para los tempranos
ordenadores que tenían
pequeñas memorias de acceso
arbitrarias por normas
modernas. Los registros fueron
almacenados sobre la cinta
magnética y procesados sobre
los bancos de unidades de cinta
magnética magnéticas, como
esta IBM 729s.
 Método estable de ordenamiento mientras la
operación de mezclas (merge) este bien
implementada.

 Este algoritmo es efectivo para conjuntos de


datos que se puedan acceder como arreglos ,
vectores y listas ligadas.
 Su principal desventaja radica en que esta
definido recursivamente y su
implementación no recursiva emplea una
pila , por lo que requiere un espacio
adicional de memoria para almacenarla.
• Éste algoritmo de ordenamiento no es el más rápido de
todos pero es un algoritmo estable y es más eficiente
manejando medios secuenciales de acceso lento. La
intercalación es a menudo la mejor opción para ordenar
una lista enlazada.
• En pocas palabras podríamos decir que funciona en forma
parecida a mezclar dos mazos de cartas en las vegas, ya que
es capaz de realizar ordenamientos de forma rápida y
sencilla.

Вам также может понравиться