Você está na página 1de 8

“UNIVERSIDAD NACIONAL DE SAN AGUSTIN DE AREQUIPA”

“FACULTAD DE INGENIERÍA DE PRODUCCIÓN Y SERVICIOS”


“ESCUELA PROFESIONAL DE INGENIERÍA INDUSTRIAL”

CURSO: LENGUAGE DE PROGRAMACIÓN Y MÉTODOS NUMÉRICOS


TEMA: MÉTODOS DE ORDENAMIENTO DE VECTORES
INTEGRANTES:
 ISA
 BRAYAN JUBERT ALVAREZ QUISPE
 CARLOS ALBERTO MESTAZ ESCARCENA
 ARTURO

AREQUIPA-2016-2-
En agradecimiento, a todos los docentes que
hacen todo lo posible para formarnos y enseñarnos ideas
nuevas que van de la mano en este mundo tan competitivo y radical.

Si un maestro te enseña a parecerte a él, entonces su guía es un


fracaso, la sabiduría de un maestro radica en ayudarte en convertirte
en ti.

Raúl Sulfate

1.- INTRODUCCIÓN


1.1.- DEFINICIÓN

En computación y matemáticas un algoritmo de ordenamiento es un


algoritmo que pone elementos de una lista o un vector en una secuencia
dada por una relación de orden, es decir, el resultado de salida ha de ser
una permutación o reordenamiento de la entrada que satisfaga la relación
de orden dada. Las relaciones de orden más usadas son el orden
numérico y el orden lexicográfico. Los ordenamientos eficientes son
importantes para optimizar el uso de otros algoritmos (como los de
búsqueda y fusión) que requieren listas ordenadas para una ejecución
rápida. También es útil para poner datos en forma canónica y para
generar resultados legibles por humanos.

Ordenar un conjunto de elementos de una lista es una tarea que se


presenta con frecuencia en la programación. A menudo, un ser humano
puede realizar esta tarea de forma intuitiva. Sin embargo, un programa de
computadora debe seguir una secuencia de instrucciones exactas para
lograrlo. Esta secuencia de instrucciones se llama algoritmo. Un algoritmo
de ordenamiento es un método que puede utilizarse para colocar una lista
de elementos en una secuencia ordenada. La secuencia de ordenamiento
está determinada por una clave. Existen varios algoritmos de ordenamiento
y difieren en cuanto a su eficiencia y rendimiento. Algunos algoritmos
importantes y conocidos son el ordenamiento de burbuja, ordenamiento por
selección, por inserción y el de ordenamiento rápido.

1.2.- BREVE RESEÑA HISTÓRICA:

Desde los comienzos de la computación, el problema del ordenamiento ha


atraído gran cantidad de investigación, tal vez debido a la complejidad de
resolverlo eficientemente a pesar de su planteamiento simple y familiar.
Aunque muchos puedan considerarlo un problema resuelto, nuevos y útiles
algoritmos de ordenamiento se siguen inventado hasta el día de hoy .Los
algoritmos de ordenamiento son comunes en las clases introductorias a la
computación, donde la abundancia de algoritmos para el problema
proporciona una gentil introducción a la variedad de conceptos núcleo de
los algoritmos.
2.-CLASIFICACIÓN

2.1.-. Por el lugar donde se realice la ordenación:

2.1.1.-Algoritmos de ordenamiento interno: en la memoria del ordenador.


2.1.2.-Algoritmos de ordenamiento externo: en un lugar externo como un
disco duro.

2.2.- Por el tiempo que tardan en realizar la ordenación:

2.2.1.-Algoritmos de ordenación natural: Tarda lo mínimo posible


cuando la entrada está ordenada.

2.2.2Algoritmos de ordenación no natural: Tarda lo mínimo posible


cuando la entrada está inversamente ordenada.

2.3.-Por estabilidad:
Un ordenamiento estable mantiene el orden relativo que tenían
originalmente los elementos con claves iguales. Por ejemplo, si una
lista ordenada por fecha se reordena en orden alfabético con un
algoritmo estable, todos los elementos cuya clave alfabética sea la
misma quedarán en orden de fecha.

3.- ALGORITMOS DE ORDENAMIENTO (ESTABLES Y NO ESTABLES)


3.1.1.-ESTABLES:

 Ordenamiento por Inserción.


 Ordenamiento por casilleros.
 Ordenamiento de burbuja.
 Ordenamiento de burbuja bidireccional.
 Ordenamiento por cuentas.
 Ordenamiento por mezcla.
 Ordenamiento con árbol binario.
 Ordenamiento Radix.
3.1.2.-INESTABLES:

 Ordenamiento Shell.
 Ordenamiento por selección.
 Ordenamiento por montículos.
 Ordenamiento rápido.
4.-PRINCIPALES VENTAJAS DE CADA TIPO
4.1.-PARA EL METODO DE BURBUJA

La ventaja principal del ordenamiento de burbuja es que es muy popular y


fácil de implementar. Además, en este tipo de ordenamiento, los elementos
se intercambian sin utilizar almacenamiento temporal adicional, de modo que
el espacio requerido es el mínimo. La principal desventaja del ordenamiento
de burbuja es el hecho de que no se comporta adecuadamente con una lista
que contenga un número grande de elementos. Esto se debe a que este
ordenamiento requiere n al cuadrado de pasos de procesamiento para cada
n número de elementos a ser ordenados. Como tal, este tipo de
ordenamiento es más apropiado para la enseñanza académica pero no para
aplicaciones de la vida real.

4.2.-PARA EL MÉTODO DE SELECCIÓN

La principal ventaja de este tipo de ordenamiento es que funciona bien con


una lista pequeña. Además, debido a que es un algoritmo de ordenamiento
en el lugar, no hay almacenamiento temporal adicional más allá de lo que se
necesita para mantener la lista original. La principal desventaja de este tipo
de ordenamiento es su poca eficiencia cuando se trata con una enorme lista
de elementos. Al igual que el ordenamiento de burbuja, este método requiere
n al cuadrado de número de pasos para ordenar n elementos. Además, su
rendimiento es fácilmente influenciado por el orden inicial de los elementos
antes del proceso de ordenamiento. Debido a esto, el ordenamiento por
selección sólo es apto para una lista de pocos elementos que estén en orden
aleatorio.

4.3.-PARA EL DE INSERCIÓN

La principal ventaja de este tipo de ordenamiento es su simplicidad. También


exhibe un buen rendimiento cuando se trabaja con una pequeña lista. El
ordenamiento por inserción es un algoritmo de ordenamiento en el lugar, de
modo que requiere de espacio mínimo. Su desventaja es que no funciona tan
bien como otros algoritmos mejores de ordenamiento. Con n al cuadrado
pasos requeridos para cada n elemento a ser ordenado, este algoritmo no
funciona bien con una lista grande. Por lo tanto, este sólo es útil cuando se
ordena una lista de pocos elementos.

4.4.-PARA EL DE ORDENAMIENTO RÁPIDO

Este tipo de ordenamiento es considerado como el mejor algoritmo de


ordenamiento. Esto se debe a su importante ventaja en términos de
eficiencia, debido a que es capaz de tratar con una enorme lista de
elementos. Debido a que ordena en el lugar, tampoco requiere de
almacenamiento adicional. El leve inconveniente de este algoritmo es que su
rendimiento en el peor de los casos es similar a los rendimientos promedio
del tipo de ordenamiento de burbuja, inserción o por selección. En general,
este algoritmo produce el método más efectivo y mayormente usado de
ordenamiento para listas de cualquier tamaño.
II.- CAPÍTULO 2 (MÉTODOS DE ORDENAMIENTO)

1.- MÉTODO DE LA BURBUJA

1.1.-DEFINICIÓN

El algoritmo de ordenación de burbuja funciona intercambiando


repetidamente los elementos adyacentes que no están en orden, hasta que
toda la lista de elementos esté en secuencia. De esta manera, los
elementos pueden observarse como formando burbujas en la lista según
sus valores claves.

El método de la burbuja es uno de los más simples, es tan fácil como


comparar todos los elementos de una lista contra todos, si se cumple que
uno es mayor o menor a otro, entonces los intercambia de posición.
Se denomina burbuja debido a que los valores más pequeños «burbujean»
gradualmente (suben) hacia la cima o parte superior del array de modo
similar a como suben las burbujas en el agua, mientras que los valores
mayores se hunden en la parte inferior del array.

1.2.-OBJETIVOS:

- Conocer y manejar el método de ordenación llamado Burbuja.


- Realizar ejecuciones de pruebas de escritorio y en ejecución.
- Determinar las ventajas y desventajas mediante una aplicación y el tiempo
de respuesta.

1.3.-CARACTERÍSTICAS
- Funciona comparando elementos de dos en dos en un ciclo,
intercambiándolos según sea el caso ascendente o descendente.
- Es necesario revisar varias veces toda la lista hasta que no se necesiten
más intercambios.

1.4.-Ventajas:

- Es bastante sencillo
- En un código reducido
- Se realiza el ordenamiento
- Eficaz

1.5.-Desventajas:

- Consume bastante tiempo de computadora.


- Requiere muchas lecturas/escrituras en memoria.
1.6.-CLASIFICACIÓN

1.6.1.-BURBUJA SIMPLE

La burbuja más simple de todas es la que compara todos con todos,


generando comparaciones extras, por ejemplo, no tiene sentido que se
compare con sigo mismo o que se compare con los valores anteriores a él,
ya que supuestamente, ya están ordenados.
Por ejemplo, imaginemos que tenemos los siguientes valores:

1.6.2.-BURBUJA OPTIMIZADA

Si al cambio anterior (el de la burbuja mejorada) le sumamos otro cambio, el


hecho que los elementos que están detrás del que se está comparando, ya
están ordenados, las comparaciones serian aún menos y el método seria
aún más efectivo. Si tenemos una lista de 10 elementos y estamos
analizando el quinto elemento, qué sentido tiene que el quinto se compare
con el primero, el segundo o el tercero, si supuestamente, ya están
ordenados.

1.7.-CONCLUSIONES

- Las pruebas de escritorio son importantes ya que ayudan al usuario a


entender el procedimiento y la corrida del algoritmo.

- El método Burbuja es excelente si trata de un arreglo de pocos datos para


el ordenamiento.

2.- METODO DE ORDENAMIENTO POR SELECCIÓN

2.1.-DESCRIPCION DEL ALGORITMO

El ordenamiento de selección es un algoritmo de ordenamiento que


requiere
O(N2 )operaciones para ordenar una lista de n elementos.

2.2.-FUNCIONAMIENTO:
 Buscar el mínimo elemento de la lista.
 Intercambiarlo con el primero.
 Buscar el mínimo en el resto de la lista.
 Intercambiarlo con el segundo.
 Repites este proceso hasta que hayas ordenado toda la lista.
2.3.-OBJETIVOS:
 Buscar el mínimo elemento entre una posición i y el final de la lista.
 Intercambiar el mínimo con el elemento de la posición inicial.
2.4.-ANÁLISIS DEL ALGORITMO

2.4.1-Estabilidad: inestable

2.4.1.-Requerimientos de Memoria:

Al igual que el ordenamiento burbuja, este algoritmo sólo necesita una


variable adicional para realizar los intercambios.

2.4.2.-Tiempo de Ejecución:

El ciclo externo se ejecuta n veces para una lista de n elementos. Cada


búsqueda requiere comparar todos los elementos no clasificados. Luego
la complejidad es O(n2). Este algoritmo presenta un comportamiento
constante independiente del orden de los datos. Luego la complejidad
promedio es también O(n2).

2.5.-Ventajas:

 Fácil implementación.
 No requiere memoria adicional.
 Realiza pocos intercambios.
 Rendimiento constante: poca diferencia entre el peor y el mejor caso.

2.6.-Desventajas:

 Lento.
 Realiza numerosas comparaciones
 Este es un algoritmo lento. No obstante, ya que sólo realiza un
intercambio en cada ejecución del ciclo externo, puede ser una buena
opción para listas con registros grandes y claves pequeñas.

Você também pode gostar