Métodos de ordenamiento

Share Embed Donate


Short Description

Download Métodos de ordenamiento...

Description

4.1. Algoritmos de ordenamiento.

MÉTODOS DE  ORDENAMIENTO  Y BÚSQUEDA

Algoritmos de ordenamiento  Algoritmos simples:  Burbuja  Por selección  Por inserción

 Características:  De fácil comprensión  Su uso puede ser preferible en archivos con poca 

información o casi ordenados  Poco «sofisticados»  Comparativamente lentos Estructura y Organización de Datos

2

Algoritmos de ordenamiento:  SIMPLES  Los tres algoritmos tratados a continuación 

conllevan 2 pasos, que son ejecutados una y  otra vez hasta que los datos quedan  ordenados: 1. Comparar dos elementos. 2. Intercambiar dos elementos o copiar uno de 

ellos. Estructura y Organización de Datos

3

SIMPLES /Burbuja public void bubbleSort() { int out, in; for(out=nElems‐1; out>1; out‐‐) for(in=0; in a[in+1] )  swap(in, in+1);  } Estructura y Organización de Datos

4

SIMPLES /Burbuja  La idea es poner el elemento más pequeño al 

principio del arreglo (índice cero) y el más grande al final (índice nElems‐1).  Los elementos en índices mayores que se  encuentran ordenados.  La variable  se mueve hacia la izquierda para cada pasada de  de modo que los  elementos que ya están ordenados no  participan más en el proceso. Estructura y Organización de Datos

5

SIMPLES /Selección  El ordenamiento por selección mejora al de 

burbuja reduciendo el  (swaps) necesarios de O(N2) to O(N).   Desafortunadamente el  permanece en O(N2).   Sin embargo, este algoritmo aún ofrece una mejora significativa para grandes registros que deben ser movidos físicamente en memoria,  causando que el tiempo de intercambio sea  mucho más importante que el tiempo de  comparaciones. (Este no es el caso en Java,  donde las referencias se mueven, no los objetos.) Estructura y Organización de Datos

6

SIMPLES /Selección public void selectionSort() { int out, in, min; for(out=0; out
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF