Fundamental 3-Algoritmos de Ordenamiento
Fundamental 3-Algoritmos de Ordenamiento
Fundamental 3-Algoritmos de Ordenamiento
--Algoritmos Computaciónales-->
}
01 Algortmos de ordenamiento
02 Clasificación
03 Ordenación por cambio directo / ordenación burbuja
04 Ordenación por el metodo de intercambio directo por señal
05 Ordenación por inserción binaria
06 Ordenación por selección directa
Indice 07 Analisis de eficiencia de los metodos directos
08 Ordenación por el metodo shell
09 Metodo de ordenación quicksort
10 Arbol binario
11 HEAD
12 HEAD SORT
13 Algoritmo logico
Algoritmos de Ordenamiento significa
ordenamiento { reagrupar o reorganizar un
conjunto de datos u objetos en
una secuencia especifica.
Ordenamiento significa
reagrupar o reorganizar un
conjunto de datos u objetos en
una secuencia especifica.
Ordenamiento significa
reagrupar o reorganizar un
conjunto de datos u objetos en
una secuencia especifica.
}
Clasificación {
Internos
Externos
Se encuentran en la memoria principal de
la computadora, por lo que se asume que Son aquellos en los que los valores a
el tiempo que se requiere para acceder ordenar están en memoria secundaria
cualquier elemento sea el mismo (disco, cinta, cilindro magnético, etc.), por
lo que se asume que el tiempo que se
requiere para acceder a cualquier
elemento depende de la última posición
accesada.
Metodos Metodos
directos logaritmicos
n2 n*logn }
Ordenación por cambio directo / ordenación
burbuja {
}
Ordenación por cambio directo / ordenación
burbuja {
}
Ordenación por el método de intercambio
directo por señal {
}
Ordenación por el metodo de intercambio
directo por señal {
}
Ordenación por el metodo de intercambio
directo por señal {
}
Ordenación por inserción
binaria {
Éste método es una mejora del método de
inserción directa. La mejora consiste en
realizar una búsqueda binaria en lugar de
una búsqueda secuencial para insertar un
elemento en la parte izquierda del arreglo
que se encuentra ordenado.
}
Ordenación por selección
directa {
}
Ordenación por selección
directa {
}
Análisis de eficiencia de los metodos directos
{
}
Ejemplo de análisis de eficiencia de los
métodos directos {
}
Ejemplo de análisis de eficiencia de los
métodos directos {
}
Ordenación por el método shell {
}
Ejemplo de ordenación por el método
shell {
}
Método de orientación Quicksort {
}
Ordenación por el método shell {
Ventajas Desventajas
• Se complica su implementación si
• Es el método más rápido. no es posible la recursión.
• Es fácil de implementar. • Un error en la implementación
• No requiere de espacio adicional puede pasar desapercibido
durante la ejecución. provocando mal rendimiento.
• Requiere de pocos recursos en • Es inestable y sensible a la
comparación a otros métodos. elección del pivot.
}
Ejemplo sencillo de quicksort {
}
Arbol binario {
Conjunto finito de nodos el cual puede servacío o tener un par de árboles llamados izquierdo
y derecho. Cuando un nodo no tiene hijos se le llama hoja o nodo terminal.
}
¿Que es un HEAD? {
HEA
D
Este head o montículo es un árbol
binario donde todos padres son
mayores que sus hijos.
Este árbol binario tiene que ser
completo, es decir, que debe tener
todos sus niveles llenos, excepto el
último y en este último nivel todos los
hijos está a un mismo lado ( por
ejemplo a la izquierda).
}
¿Que es un HEAP SPRT? {
}
¿Como funcióna HEAP SORT? {
}
Ventajas y desventajas {
Ventajas Desventajas
• No es estable, ya que se
• La principal ventajaes que este comporta de manera ineficaz con
método funciona mas datos del mismo valor
efectivamente con datos • método mas complejo
desordenados.
• Su desempeño es en promedio
tanbueno como el Quick sorty se
comporta mejor que este último
en los peor escasos.
• No utiliza memoria adicional.
}
Caracteristeicas HEAP SORT{
No recursivo:
Porque no usa métodos que se llamen a sí mismos, sino que usa sucesivas
iteraciones para obtener el conjunto de nodos ordenados.
No estable
• Ya que se comporta de manera poco eficaz con datos del mismo valor.
Con complejidad O(n log n).
Funcionamiento:
• El árbol se llena de izquierda a derecha, lo que implica que si algún (os)
nodo
• (s) no está (n) en el mismo nivel que el resto, éste (os) estará (n) entonces
lo más a la izquierda posible del árbol.
• El orden de ejecución para el peor caso es O (N · log(N)).
}
Algoritmo Logico {
}
Ejemplo HEAP SORT {
}
Conclusión {
Aprender sobre los distintos tipos de algoritmos de ordenamiento es fundamental para cualquier
persona interesada en ciencias de la computación, matemáticas aplicadas o ingeniería de software, y
tiene varios beneficios importantes:
• Optimización del uso de recursos: Los algoritmos tienen distintas complejidades de tiempo y
espacio. Saber cuándo usar un algoritmo de ordenamiento específico, como QuickSort o
MergeSort, puede reducir el tiempo de ejecución o el uso de memoria, lo cual es crítico en
aplicaciones que manejan grandes volúmenes de datos o tienen restricciones de hardware.
}
Referencias {
}
<!--Algoritmos Computaciónales-->
Gracias por su
atención {
<Por="Roberto Carlos Lozano Páez 2222950 ITS”/>