Essays.club - Ensayos gratis, notas de cursos, notas de libros, tareas, monografías y trabajos de investigación
Buscar

INFORME 3 DE ESTRUCTURA DE DATOS Y ALGORITMOS

Enviado por   •  27 de Noviembre de 2018  •  1.247 Palabras (5 Páginas)  •  454 Visitas

Página 1 de 5

...

Preguna 2.i

arrayint, 10>crear()

Función que crea un array de 10 elementos y lo llena con un valor por defecto. Este valor servirá posteriormente para verificar que un espacio del array este vacío.

Esta función siempre retornará el array {-99, -99, -99, -99, -99, -99, -99, -99, -99, -99}.

arrayint, 10>insert(arrayint, 10>arbol, int valor)

Esta función recibe el árbol y el valor a insertar en él. Se determina en que índice debe insertarse el valor, verificando que esto sea posible, luego se procede a determinar los índices que se deben recorrer, guardándolos en un vector creado previamente y finalmente se procede a recorrer estos índices, mientras se van ordenando como un max heap.

Además se determina el tiempo de ejecución de la función y se muestra en pantalla.

Ejemplo: Si se tiene el array {23, 14, 21, -99, -99, -99, -99, -99, -99, -99} y se inserta el valor 31, se retornará el nuevo array {31, 23, 21, 14, -99, -99, -99, -99, -99, -99}.

int menu(int numero)

Función extra que pide al usuario ingresar valores para insertar. Valida que el número ingresado sea distinto al utilizado para espacios vacíos y se retorna un valor valido. La variable "numero" solo sirve para mejorar la estética del programa.

Ejemplo: Si se ingresa como argumento el número 3, se imprimirá en pantalla:

“Ingrese valor numero 3 a insertar (distinto de -99): “

Si el usuario ingresa -99, se le volverá a pedir que ingrese un número. Si el usuario ingresa el valor 45, la función retornará 45.

void mostrar(arrayint, 10>arbol)

Función extra que muestra el árbol según el método de level order.

Ejemplo: Si se ingresa el array {43, 21, 32, 18, 19, 30, 27, -99, -99, -99} se mostrará en pantalla lo siguiente:

43-> 21-> 32-> 18-> 19-> 30-> 27->

void main()

Funcion principal. Crea un array de talla 10, predefinida, inserta valores ingresados por el usuario y los muestra en pantalla, trabajando con las funciones de max_heap.cpp.

Ejemplo: Si se ingresan los valores 56, 24, 45, 35, 51, 13, 32, 67, 42, 2; se obtendrá el árbol {67, 56, 45, 51, 35, 13, 32, 24, 42, 2} y mostrará en pantalla:

"mostrando arbol por metodo de level order:

67-> 56-> 51-> 24-> 42-> 35-> 2-> 45-> 13-> 32-> "

Preguna 2.ii

void main()

En el main de este programa se realizará todo sin el uso de funciones externas. En primer lugar se define una variable para medir el tiempo de ejecución del programa, luego se inicializa un vector llamado myvector, se declara una variable de tipo entero y se crea un bucle con el fin de ingresar valores de tipo entero al vector. Una vez que el elemento se encuentre en este, se usará la función make_heap para crear el árbol (Max Heap )con los valores del vector, el cual ingresa cada elemento al árbol de izquierda a derecha, junto a eso a medida que se integra, se compara con sus ancestros para obtener su posición correspondiente. Una vez finalizado el árbol, la variable de tiempo dejara de funcionar, dando a mostrar así el tiempo de ejecución del programa (impreso en pantalla), siguiendo con otro bucle para mostrar los elementos del vector. Se ha usado una función “system(pause)” para detener la pantalla, con el propósito de visualizar el resultado sin que esta se cierre.

[pic 20]

...

Descargar como  txt (7.5 Kb)   pdf (51.2 Kb)   docx (14.5 Kb)  
Leer 4 páginas más »
Disponible sólo en Essays.club