Sei sulla pagina 1di 10

Proyecto Final

Jorge Calquín Otárola


Estructura de datos
Instituto IACC
10 de noviembre de 2018
Desarrollo

1) Se tiene la siguiente lista enlazada de 10 nodos (8, 10, 12 , 13, 26, 11, 35, 36, 40, 27) e
indicar cómo quedaría gráficamente la lista si:

8 10 12 13 26 11 35 36

40 27 Final

a) Se elimina el nodo 13:

8 10 12 26 11 35 36 40

27 Final

b) Se inserta el nodo 8 entre los nodos 35 y 40:

8 10 12 26 11 35 36 8

40 27 Final
2) Se tiene la siguiente pila de 8 nodos (c, d, r, t, j, y, t, y) e indique cómo quedaría
gráficamente la pila si:

IN OUT t

c
a) Inserta los nodos (a, e).

IN OUT a

c
b) Elimina los nodos (c, y).

r
IN OUT
t

e
3) Considere los siguientes nodos (5, 7, 9, 12, 16, 21, 23, 28). Explique de qué forma se

insertan y se sacan estos nodos de manera que el primero en entrar sea el primero en salir.

Identifique qué tipo de estructura de datos es y cómo quedaría gráficamente.

Además, mencione dos ventajas y dos desventajas de este ordenamiento de datos, basándose

en un ejemplo de la vida cotidiana.

La lógica para insertar nodos de la manera solicitada seria la siguiente (Colas), ya que esta utiliza

la lógica donde el primer elemento en entrar es el primero en salir.

La manera gráfica de mostrarlo sería la siguiente:

Salida Entrada
5 7 9 12 16 21 23 28

En la vida cotidiana nos encontramos con muchos casos en el que el primer elemento en entrar
es el primero en salir, se conoce como norma FIFO (Firts In, Firts Out), esta norma se puede
comparar con filas realizadas en los supermercados, bancos, cajas al momento de pagar, cargar
nuestro pase escolar en la caja del metro, etc. En este ejemplo se cumplirá de manera fiel esta
norma.

En una bodega de productos perecibles también se cumple esta norma, ya que debido a la
cadena de frio, o deterioro de algunos productos tales como, carnes, verduras, lácteos, cecinas,
los primeros productos fabricados deben ser los primeros en salir, por lo general en estas
bodegas existe un encargado de mantener en primer puesto el producto que va quedando del
despacho anterior y no se fue en primera instancia.
Una desventaja comparada con la vida cotidiana puede ser que para llegar al elemento que esta
al inicio o a la salida debemos pasar por cada uno de los que se anteponen al elemento, dentro
de la informática este ejemplo podría ser que no podemos instalar los programas útiles para el
usuario sin antes instalar el sistema operativo.

Una segunda desventaja puede ser en cuanto a la urgencia del dato necesario demorara el
proceso que necesite en pasar por todos los elementos al buscar el dato solicitado, podemos
compararla con las listas utilizadas al momento de sufragar, cuando hay mucha afluencia de
público la búsqueda de un nombre en una lista tomara mucho tiempo.

3) Implemente un algoritmo utilizando arreglos que permitan ordenar de mayor a menor


los promedios de notas de los alumnos del curso de Estructuras de Datos:

<?php
echo "Proyecto Final Jorge calquin";
echo "<br>";
echo "<br>";
function cmp($a, $b)
{
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}

$a = array(6.5, 5.9, 4.0, 2.0, 5.5, 7.0, 4.8, 4.6,


4.8, 3.9);

usort($a, "cmp");

foreach ($a as $clave => $valor) {


echo "$clave: $valor\n";
}
?>
El resultado del código es el siguiente

5) Suponga que Ud. es un programador y le han solicitado que organice la base de datos de la
Escuela de Informática de un instituto profesional que cuenta con un total de 450 estudiantes,
para que sea manejada por el Departamento de Recursos Estudiantiles. De acuerdo a sus
conocimientos informáticos, concluye que lo mejor es trabajar los datos con listas
doblemente enlazadas. Argumente adecuadamente tomando en cuenta las ventajas de usar
este sistema de estructura de datos.

 Trabajar con listas doblemente enlazadas crea una ventaja que está por sobre todas las
otras formas, esto debido a que se pueden realizar inserciones y extracciones de nodos
de manera independiente al tamaño de la lista, al crear un nuevo registro este puede ser
agregado en cualquier posición de la lista, la condición es respetar el puntero a utilizar y
reemplazar los eliminados, esto para desplazar los datos y no se pierdan.
 No se necesita una gran cantidad de memoria
 La memoria se adapta de manera dinámica al número de datos que se almacenan en la
lista.
 Se pueden realizar búsquedas de manera rápida y se puede realizar desde cualquier
nodo y en cualquier dirección.
6) Implementar gráficamente el recorrido en preorden de un árbol binario con los siguientes
13 nodos: (G, E, A, I, B, M, C, L, D, F, K, J, H). Luego, ¿cómo sería su recorrido en postorden?
Grafíquelo.

Grafico en Preorden:

E D

A M F H
I B C L K J

Grafico en Postorden:

C J

A M F K
G E I B L D
Y ¿cuál de estos dos recorridos sería el más adecuado para acceder a los nodos con las
vocales?
Justifique su respuesta.

Un árbol puede ser recorrido de distintas maneras, recorrerlo en Postorden consiste en


recorreré el subárbol izquierdo, visitar el subárbol derecho para finalizar visitando el Nodo raíz,
en este caso sería así: G – E – A – I – B – M – C – L – D – F – K – J - H

Bibliografía

Material de estudio (iacc, Introducción a los algoritmos, semana 1)

Material de estudio (iacc, Arreglos, semana 2)

Material de estudio (iacc, Pilas, semana 3)

Material de estudio (iacc, Colas, semana 4)

Material de estudio (iacc, Listas Enlazadas, semana 5)

Material de estudio (iacc, Listas doblemente enlazadas, semana 6)

Material de estudio (iacc, Arboles, semana 7)

Material de estudio (iacc, Arboles Binarios, semana 8)

Potrebbero piacerti anche