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

METODOS DE ORDENACION

Docente:
Mg. Calderón de la Barca Marcos
Alumnos:
 Luis Eduardo Cohaila Aguilar
(0201814036)

 Harby Romero Loli


(0201814025)

 Yassir Montenegro Gonzales


(0201814048)

 Nelvin Lujan Rodríguez


(0201814007)

 Melio Díaz Diaz


(0201814005)
Ordenamiento por
Inserción
Concepto
 El ordenamiento por inserción es una manera muy natural de ordenar para un ser
humano, y puede usarse fácilmente para ordenar un mazo de cartas numeradas
en forma arbitraria
 Su funcionamiento consiste en el recorrido por la lista seleccionando en cada
iteración un valor como clave y compáralo con el resto a la izquierda del mismo.
Se empieza por el segundo elemento.
Se compara con el primero. Como
67<15 no se desplaza.

Seguido con el tercer elemento. Se


compara con los anteriores y se van
desplazando hasta estar en orden.

Seguimos con los ordenamientos hasta


que este ordenada.
Código
MÉTODO DE SELECCIÓN
ORDENACIÓN POR SELECCIÓN
El método de ordenación por selección
consiste en repetir los siguientes pasos:

• Se busca el elemento más pequeño


del array y se coloca en la primera
posición.

• Entre los restantes, se busca el


elemento más pequeño y se coloca
en la segunda posición.

• Entre los restantes se busca el


elemento más pequeño y se coloca
en la tercera posición.
EJEMPLO EN JAVA
RUN PROJECT DEL PROGRAMA
Método de Ordenamiento Shell
• Creado por Donald Shell, que lo publicó en la revista Communications of the ACM en 1959.
• Es un algoritmo de ordenamiento interno, se basa en comparaciones e intercambios. Aunque
también puede realizar ordenación externa.
• Es una versión mejorada del método de inserción directa.

• En el método se propone que las


comparaciones se efectúan con saltos de
mayor tamaño, pero con incrementos
decrecientes, así los elementos quedarán
ordenados en el arreglo.
Eficiencia:
 El análisis de eficiencia es un problema complicado y aún no resuelto.

 Nadie ha sido capaz de establecer la mejor secuencia de incrementos cuando N es muy grande.

Complejidad:
 En 1969 Pratt descubrió que el tiempo de ejecución del algoritmo es de orden n*(log n)^2

 Unas pruebas realizadas para saber la mejor secuencia de intervalos cuando el numero de elementos es
igual a 8 dieron como resultado que la mejor secuencia es un intervalo de 1, pero esto equivale al método de
inserción directa.

Algoritmo:
Método Quicksort

Origen
El algoritmo Quicksort fue desarrollado en el año 1960 por Charles Antony
Richard Hoare , en la Universidad Estatal de Moscú.

Descripción
Es un algoritmo recursivo, pero se utilizan versiones iterativas para mejorar su
rendimiento. Funciona de la siguiente manera:
 Elegir un elemento de la lista de elementos a ordenar: Pivote.
 Ubicar los demás elementos de la lista a cada lado del pivote: a un lado
quedan todos los menores que él, y al otro los mayores.
 La lista queda dividida en dos : la mitad formada por los elementos a la
izquierda del pivote, y otra por los elementos a su derecha.
 Repetir este proceso de forma recursiva para cada. Culminado este proceso,
todos los elementos estarán ordenados.
Método Quicksort

Tiempo de Ejecución
Caso promedio:
N.logN
Peor caso posible:
N2
Donde N es el número de elementos que integran la lista.
Ventajas
 Rapidez.
 No requiere memoria adicional.
Desventajas
 Recursividad.
 El tiempo de ejecución depende del pivote.
Método Quicksort
Implementación en Java:
public static void quicksort_1(int lf,int rg,int q[]){
int i=lf;
int d=rg;
int aux=0;
int n=q.length;
int piv=q[lf];
while(i<d){
while(q[i]<=piv&&i<d){
i++;}
while(q[d]>piv){
d--;}
if(i<d){
aux=q[i];
q[i]=q[d];
q[d]=aux;} }
q[lf]=q[d];
q[d]=piv;

if(lf<d-1){
quicksort_1(lf,d-1,q); }
if(d+1<rg){
quicksort_1(d+1,rg,q);}
}
BUSQUEDA HASH
• El termino hash significa picar y mezclar en ingles.
• En informática, hace referencia al método para generar llaves
que representen o identifiquen a un dato a través de una
determinada función, llamada función hash, función resumen o
función digest.
• Se usa en criptografía, firmas digitales, validación de ficheros,
entre otros.
• Una buena función hash es una que experimenta pocas
colisiones.
MECANISMO

0
1

VALOR FUNCION HASH KEY .


.
n
CRIPTOGRAFIA
VALIDACION DE FICHEROS
Tablas Hash
OUTPUT
CODE
Método Hash

Ventajas

 Se logra independencia lógica y física, debido a que los valores de las


llaves son independientes del espacio de direcciones.
 No se requiere almacenamiento adicional para los índices.

Desventajas

 No pueden usarse registros de longitud variables. (total - 1 = = primo)


 No permite llaves repetidas.
 Solo permite acceso por una sola llave.

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