Metodos de ordenamiento

10

Click here to load reader

Transcript of Metodos de ordenamiento

Page 1: Metodos de ordenamiento

METODOS DE ORDENAMIENTO

Y BUSQUEDA

Page 2: Metodos de ordenamiento

POR :ANDRÉS PÉREZ

SEBASTIAN MORENO

Page 3: Metodos de ordenamiento

METODO DE ORDENAMIENTO BURBUJA

La ordenación de burbuja es un sencillo algoritmo. Funciona revisando cada elemento de la lista que va a ser ordenada con el siguiente, intercambiándoles de posición si están en el orden equivocado. Es necesario revisar varias veces toda la lista hasta que no se necesiten mas intercambios, lo cual significa que la lista esta ordenada.

Su nombre se debe a la forma en la que suben los elementos durante los intercambios, como si fueran pequeñas “burbujas” . También conocido, como el método de intercambio directo.

Page 4: Metodos de ordenamiento

METODO DE ORDENAMIENTO QUITKSORT

El método de ordenamiento Quick Sort es actualmente el más eficiente y veloz de los métodos de ordenación interna. Es también conocido con el nombre del método rápido.

La idea central de este algoritmo consiste en los siguiente: Se toma un elemento x de una posición cualquiera del arreglo. Se trata de ubicar a x en la posición correcta del arreglo, de tal

forma que todos los elementos que se encuentran a su izquierda sean menores o iguales a x y todos los elementos que se encuentren a su derecha sean mayores o iguales a x.

Se repiten los pasos anteriores pero ahora para los conjuntos de datos que se encuentran a la izquierda y a la derecha de la posición correcta de x en el arreglo

Page 5: Metodos de ordenamiento

METODO DE ORDENAMIENTO SHELL

El método de ordenación Shell debe su nombre a su inventor, Donald Shell, y fue uno de los primeros algoritmos de ordenamiento en romper la barrera del tiempo cuadrático.

Es una mejora del método de inserción directa, utilizado cuando el array tiene un gran número de elementos.

Cualquier algoritmo de ordenación que intercambia elementos adyacentes (como los algoritmos burbuja, selección o inserción) tiene un tiempo promedio de ejecución de orden cuadrático (n2). El método Shell mejora este tiempo comparando cada elemento con el que está a un cierto número de posiciones llamado salto, en lugar de compararlo con el que está justo a su lado. Este salto es constante, y su valor inicial es N/2 (siendo N el número de elementos, y siendo una división entera).

Page 6: Metodos de ordenamiento

METODO DE ORDENAMIENTO POR INTERCAMBIO El algoritmo del intercambio aunque es el más sencillo de

implementar es uno de los mas pobres en rendimiento, se basa en la idea de buscar cada vez el menor elemento del conjunto y ubicarlo al principio del mismo, repitiendo este proceso cada vez con el conjunto sin su primer elemento (el menor del conjunto anterior), hasta llegar a un conjunto de un solo elemento que por definición ya está ordenado.

 En cada paso del algoritmo se compara el primer elemento del conjunto x[i], con los demás elementos del mismo x[j] (j=i+1 .. n) y cuando x[i] es mayor que x[j], se intercambian sus valores. Cuando se termina de recorrer el arreglo el proceso nos garantiza que en x[i] está el menor elemento del conjunto

Page 7: Metodos de ordenamiento

METODO DE BUSQUEDA SECUENCIAL Y BINARIA

El método de búsqueda binaria: Es un método que se basa en la división sucesiva del espacio ocupado por el vector en sucesivas mitades, hasta encontrar el elemento buscado.

Esta búsqueda utiliza un método de “divide y vencerás” para localizar el valor deseado. Con este método se examina primero el elemento central de la lista; si este es el elemento buscado entonces la búsqueda ha terminado. En caso contrario se determina si el elemento buscado está en la primera o segunda mitad de la lista y a continuación se repite el proceso anterior, utilizando el elemento central de esta sublista. Este tipo de búsqueda se utiliza en vectores ordenados.

Page 8: Metodos de ordenamiento

Método de Búsqueda Secuencial: Este método se usa para buscar un elemento de un vector, es

explorar secuencialmente el vector, es decir; recorrer el vector desde el prior elemento hasta el último. Si se encuentra el elemento buscado se debe visualizar un mensaje similar a “Fin de Búsqueda” o “Elemento encontrado” y otro que diga “posición=” en caso contrario, visualizar un mensaje similar a “Elemento no existe en la Lista”.

Este tipo de búsqueda compara cada elemento del vector con el valor a encontrar hasta que este se consiga o se termine de leer el vector completo

Page 9: Metodos de ordenamiento

METODO DE INSERCION

La idea de este algoritmo de ordenación consiste en ir insertando un elemento de la lista o un arreglo en la parte ordenada de la misma, asumiendo que el primer elemento es la parte ordenada, el algoritmo ira comparando un elemento de la parte desordenada de la lista con los elementos de la parte ordenada, insertando el elemento en la posición correcta dentro de la parte ordenada, y así sucesivamente hasta obtener la lista ordenada.

Page 10: Metodos de ordenamiento

SEUDOCODIGO DEL METODO DE INSERCION

El algoritmo ordena los elementos del arreglo utilizando el método de inserción directa A es un arreglo de N elementos donde I, aux y k son variables de tipo entero

1.- Repetir con I desde 2 hasta N Hacer aux<- A[I] y k<- I-1a. Repetir mientras(aux < [k]) y (k > 1) , Hacer A[k+1]<- A[k] y k<-- k-1b. {fin del ciclo del paso 1.1}c. Si a[k]<=aux Entonces: Hacer A[k+1]<-auxSi no Hacer A[k+1]<- A[k], A[k]<-A[k]d. { fin del condicional del paso 1.3}2. {fin del condicional del paso1}