ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Seminario de Solución de Problemas de Algoritmia


Enviado por   •  21 de Agosto de 2017  •  Tareas  •  437 Palabras (2 Páginas)  •  278 Visitas

Página 1 de 2

Universidad de Guadalajara

Centro Universitario de Ciencias Exactas e Ingenierías

[pic 1]

Seminario de Solución de Problemas de Algoritmia

Cruz Navarro Jesús Felipe

Actividad 3

Burbuja y su funcionamiento

Introducción

En el mundo de la programación existen diversas instrucciones para la solución de problemas,  en es esta actividad en específico se hablará del método de ordenamiento llamado burbuja.

Burbuja es un método de ordenamiento cuya complejidad algorítmica es  , al ser un algoritmo básicamente iterativo puede implementarse su versión recursiva.[pic 2]

Entre los algoritmos de ordenamiento podría catalogarse a burbuja como uno de los métodos mas primitivo de orden.

Desarrollo

Hay distintas formas de codificar burbuja, nuestra manera consta principalmente de dos ciclos, una condición y un booleano bandera.

Para comenzar,  se declara a burbuja como una función, la cual no incluye parámetros, pues trabajará internamente en la lista. Necesitará dos apuntadores, uno que sirva para recorrer la lista, y otro para poder guardar la información en caso de haber un cambio como adicional, necesitaremos un dato lógico que nos diga si en el recorrido no se efectuaron cambios.

[pic 3]

Seguido de ello, crearemos una excepción para evitar colapsos del software, esta nos dice que si la lista vacía mandará un mensaje con ese dato.

[pic 4]

En caso contrario de que la lista no está vacía entrará a un loop donde jugará un papel muy importante nuestro booleano, pues el ciclo no terminará mientras este esté tornado en falso.

[pic 5]

Cabe aclarar que dentro del loop, el booleano ‘terminado’  tornará true cada vez que este se repita, pero tornará false entrando al while anidado que se alcanza apreciar en la captura anterior.

[pic 6]

Una vez dentro del segundo while, entrará una condición que nos dice que si nuestro nodo actual es mayor al consecuente de él, estos cambiaran de posición.

[pic 7]

Esto sucede con una sobre-escritura de datos, para ello necesitamos el otro apuntador a nulo que guardará temporalmente los datos del nodo siguiente al recorrido para poder hacer un intercambio de valores.

[pic 8]

Si esto ocurre, el nodo “iterará” de manera dinámica y nuestra bandera tornará falsa  , por lo que al volver al primer loop la detectará y volverá a hacer el recorrido (tornándola previamente  de vuelta a true) cuando no entre a esta condición saldrá del primer loop.

...

Descargar como (para miembros actualizados) txt (3 Kb) pdf (400 Kb) docx (184 Kb)
Leer 1 página más »
Disponible sólo en Clubensayos.com