Está en la página 1de 8

FACULTAD DE EDUCACIÓN

ESPECIALIDAD DE MATEMÁTICA E
INFORMÁTICA

GRUPO:
INTEGRANTES:
 CHAVEZ ALVA, FRANKLIN EDWIN
 VASQUEZ AGUILAR, ZULY MALÚ
 RODRIGUEZ VASQUEZ, JOSE
ROBERTO
 TACILLA MANTILLA ABDIAS
ESTRUCTURA
TEMA: ALGORITMO DE
DE DATOS Y ORDENAMIENTO: TIPO
BURBUJA

ALGORITMOS II
INTRODUCCIÓN
CONTENIDO
ALGORITMO DE ORDENAMIENTO
¿Qué es ordenamiento?
Es la operación de arreglar los elementos en algún orden secuencial de acuerdo a un
criterio ordenamiento. El propósito principal de un ordenamiento es el de facilitar las
búsquedas de los miembros conjunto ordenado. El ordenar un grupo de datos significa
mover los datos significa mover los datos o sus referencias para que queden en una
secuencia por categoría y en forma ascendente o descendente.
¿Cuándo conviene usar un método de ordenamiento?
Cuando se requiere hacer una cantidad considerable de búsquedas y es importante el
factor tiempo.
TIPOS DE ORDENAMIENTOS
los 2 tipos de ordenamientos que se pueden realizar son: los internos y los externos.
LOS INTERNOS:
Son aquellos en los valores a ordenar están en menoría principal, por lo que se asume que
el tiempo que se requiere para acceder cualquier elemento sea el mismo (a [1], a [500],
etc.,).
LOS EXTERNOS:
Son aquellos en los que los valores a ordenar están en menoría secundaria (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 (posición 1, posición50,
etc.)

Método Ordenamiento Burbuja


Este método consiste en acomodar el vector moviendo el mayor hasta la última casilla
comenzando desde la casilla cero del vector hasta haber acomodado el número más
grande en la última posición, una vez acomodado el más grande, prosigue a encontrar y
acomodar el siguiente más grande comparando de nuevo los números desde el inicio del
vector, y así sigue hasta ordenar todo el elemento el arreglo. Este algoritmo es muy
deficiente ya que al ir comparando las casillas para buscar el siguiente más grande, éste
vuelve a comparar las ya ordenadas. A pesar de ser el algoritmo de ordenamiento más
deficiente que hay, éste es el más usado en todos los lenguajes de programación.
La idea básica del ordenamiento burbuja es imaginar que tenemos un arreglo en forma
vertical, y que los elementos del arreglo con claves m que se recorra el arreglo varias
veces de abajo hacia arriba, al hacer esto si tenemos dos elementos que están adyacentes
que no estén en orden, es decir si el más ligero estas abajo se invierten.
Método burbuja
(Intercambiar cada pareja consecutiva que no esté ordenada)

PARA I=1 HASTA N-1

PARA J=I+1 HASTA N

SI A[I] > A[J]

INTERCAMBIAR (A[I], A[J])

(Nota: algunos autores hacen el bucle exterior creciente y otros decreciente, así:)

PARA I=N DESCENDIENDO HASTA 2

PARA J=2 HASTA I

SI A[J-1] > A[J]

INTERCAMBIAR (A[J-1], A[J])

Selección directa

(En cada pasada busca el menor, y lo intercambia al final de la pasada

PARA I=1 HASTA N-1


MENOR = I
PARA J=I+1 HASTA N
SI A[J] < A[MENOR]
MENOR = J
SI MENOR <> I
INTERCAMBIAR (A[I], A[MENOR])

Algoritmo de la burbuja
En el caso de un array (lista) con n elementos, la ordenación por burbuja requiere hasta
(n – 1) pasadas. Por cada pasada se comparan elementos adyacentes y se intercambian
sus valores cuando el primer elemento es mayor que el segundo elemento. Al final de
cada pasada, el elemento mayor ha «burbujeado» hasta la cima de la sublista actual. Por
ejemplo, después que la pasada 0 está completa, la cola de la lista A [n − 1] está ordenada
y el frente de la lista permanece desordenado. Las etapas del algoritmo son:
 En la pasada 0 se comparan elementos adyacentes:

(A [0], A [1]), (A [1], A [2]), (A [2], A [3]), ...(A[n-2], A[n-1])


Se realizan n − 1 comparaciones, por cada pareja (A[i], A[i+1]) se intercambian los
valores si A[i+1] < A[i]. Al final de la pasada, el elemento mayor de la lista está situado
en A[n-1].
 En la pasada 1 se realizan las mismas comparaciones e intercambios, terminando
con el elemento segundo mayor valor en A[n-2].
 El proceso termina con la pasada n − 1, en la que el elemento más pequeño se
almacena en A [0].
El algoritmo tiene una mejora inmediata, el proceso de ordenación puede terminar en la
pasada n − 1, o bien antes, si en una pasada no se produce intercambio alguno entre
elementos del vector es porque ya está ordenado, entonces no es necesario más pasadas.
El ejemplo siguiente ilustra el funcionamiento del algoritmo de la burbuja con un array
de 5 elementos (A = 50, 20, 40, 80, 30), donde se introduce una variable interruptora para
detectar si se ha producido intercambio en la pasada.
En consecuencia, el algoritmo de ordenación de burbuja mejorado contempla dos bucles
anidados: el bucle externo controla la cantidad de pasadas (al principio de la primera
pasada todavía no se ha producido ningún intercambio, por tanto, la variable interruptora
se pone a valor falso (0); el bucle interno controla cada pasada individualmente y cuando
se produce un intercambio, cambia el valor de interruptor a verdadero (1). El algoritmo
terminará, bien cuando se termine la última pasada (n − 1) o bien cuando el valor del
interruptor sea falso (0), es decir, no se haya hecho ningún intercambio. La condición
para realizar una nueva pasada se define en la expresión lógica (pasada < n-1) &&
interruptor.
Análisis del algoritmo de la burbuja
¿Cuál es la eficiencia del algoritmo de ordenación de la burbuja? Dependerá de la versión
utilizada. En la versión más simple se hacen n − 1 pasadas y n − 1 comparaciones en cada
pasada. Por consiguiente, el número de comparaciones es (n − 1) * (n − 1) = n2 − 2n + 1,
es decir, la complejidad es 0(n2). Si se tienen en cuenta las versiones mejoradas haciendo
uso de las variables interruptor o índice Intercambio, entonces se tendrá una eficiencia
diferente a cada algoritmo. En el mejor de los casos, la ordenación de burbuja hace una
sola pasada en el caso de una lista que ya está ordenada en orden ascendente y por tanto
su complejidad es 0(n). En el caso peor se requieren (n − i − 1) comparaciones y (n − i −
𝑛(𝑛+1)
1) intercambios. La ordenación completa requiere comparaciones y un número
2
similar de intercambios. La complejidad para el caso peor es 0(n2) comparaciones y 0(n2)
intercambios. De cualquier forma, el análisis del caso general es complicado dado que
algunas de las pasadas pueden no realizarse. Se podría señalar, entonces, que el número
medio de pasadas k sea 0(n) y el número total de comparaciones es 0(n2). En el mejor de
los casos, la ordenación por burbuja puede terminar en menos de n − 1 pasadas, pero
requiere, normalmente, muchos más intercambios que la ordenación por selección y su
prestación media es mucho más lenta, sobre todo cuando los arrays a ordenar son grandes.
EJERCICIOS EN VISUAL:
CONCLUSIONES
 Es un algoritmo de burbuja es reducido y eficaz
 Los métodos de ordenamiento de datos son muy útiles, ya que la forma de arreglar
los registros de una tabla en algún orden secuencial de acuerdo a un criterio de
ordenamiento, el cual puede ser numérico, alfabético o alfanumérico, ascendente
o descendente. Nos facilita las búsquedas de cantidades de registros en un
moderado tiempo, en modelo de eficiencia. Mediante sus técnicas podemos
colocar listas detrás de otras y luego ordenarlas, como también podemos
comparar pares de valores de llaves, e intercambiarlos si no se encuentran en sus
posiciones correctas.

BIBLIOGRAFÍA

También podría gustarte