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

S1_E1_Algoritmo y Estructura de Datos


Enviado por   •  17 de Abril de 2018  •  Tareas  •  9.689 Palabras (39 Páginas)  •  105 Visitas

Página 1 de 39

[pic 1]

19 de octubre de 2017

Universidad Tecnológica de México

Lic. En Administración de Tecnologías de la Información

Algoritmos y Estructura de Datos (B2)

Semana 1 - Entregable 1

Estructuras de Datos

Alumno:

Profesor:

Dulce Angélica Salas Salinas


[pic 2]

CUESTIONARIO 1

  1. Defina qué son las estructuras de datos lineales y qué son las estructuras de datos no lineales explicando la diferencia entre ambas.

Una estructura lineal está formada por elementos que se encuentran en secuencia, relacionados de manera lineal hacia el siguiente o el anterior, por lo que podremos encontrarlos uno detrás de otro, relacionados 1:1.

Una estructura no lineal, en cambio, está formada también por distintos elementos, pero estos se pueden relacionar a más de un solo elemento, por lo que podemos encontrar un elemento con varios sucesores y/o predecesores.

Por lo tanto la diferencia entre ambas es la relación entre los elementos, básicamente las que son 1:1 son lineales, y cuando tienen relaciones 1:n, n:1 o n:n entonces son no lineales.

  1. Complete los espacios en azul del siguiente cuadro sinóptico investigando en internet los siguientes conceptos relacionados con las estructuras de datos dinámicas:

NOMBRE DE LA ESTRUCTURA

Definición y funcionamiento

(Para llenar éste apartado deberá explicar qué es la estructura y cómo funciona)

Ejemplo de código en C++ donde se utilice la estructura

(Busque un ejemplo donde se utilice la estructura e incluya la declaración inicial de la misma así como una o más funciones donde se aprecien las operaciones básicas que se pueden llevar a cabo con ella (por ejemplo añadir elementos, buscar elementos, borrar, recorrer etc.).

Explique para qué sirve el código con sus propias palabras

(Explique en base a su investigación para qué sirve el código de la columna anterior)

LISTA

Estructura lineal, en la cual los datos se van agregando, y estos pueden ser añadidos o borrados en y desde cualquier punto de la lista, o sea antes o después de cualquier de los datos que la conforman

*Código en APÉNDICE A.

El código nos permite en base a las selecciones que hagamos en el menú creado, el insertar (al inicio, final o en cualquier posición), eliminar y buscar valores en una lista, o bien mostrar los valores ingresados en ella. La lista es una estructura simple declara al principio del código (“nodo”) en la cual se integra por un número y la creación del nodo siguiente. El menú y las opciones de el mismo están creadas como funciones que son llamadas en main() al ingresar el usuario la opción correspondiente.

PILA

Estructura lineal, en la cual los datos se van apilando uno “encima” del otro, por lo cual al agregar o apilar algún dato este queda en el final de la secuencia, y al borrar un elemento siempre se borra el último en entrar.

*Código en APÉNDICE B.

Mediante un menú en el que el usuario selecciona una opción, nos permite apilar datos uno encima del otro (dejándolos en el final de la estructura), des-apilar el último dato apilado, mostrar la pila completa o bien destruirla completamente. Las funciones y el menú son definidas fuera de main() y son llamadas en main() en base a la opción que el usuario seleccione a través de ingresar la opción deseada. La estructura de la pila es definida al principio del código (“nodo”)

COLA

Estructura lineal, en la cual los datos se van encolando uno detrás del otro, por lo cual al agregar o apilar algún dato este queda en el final de la secuencia, pero al borrar un elemento siempre se borra el primero en la cola, o sea el primero en entrar.

*Código en APÉNDICE C.

El código nos permite mediante una selección en un menú, el encolar datos uno atrás del otro, des-encolar el primer dato en la cola, mostrar la cola completa o bien vaciarla, desde el último al primer dato. Nuevamente las funciones de cada opción están definidas afuera del main() al igual que la declaración de la estructura de la pila (“nodo”), que contiene solo

ARBOL BINARIO

Un árbol binario es una estructura de datos no lineal, en la cual a diferencia de un árbol en que un elemento puede tener ilimitados datos “hijos”, en el árbol binario cada elemento sólo puede apuntar a máximo 2 elementos, comúnmente llamados hijo izquierdo e hijo derecho.

*Código en APÉNDICE D.

El código básicamente nos sirve para armar un árbol binario de búsqueda, en el que en se le solicitará agregar una serie de nodos definidos por el usuario. Luego en la función de insertado de los datos, se hará para lograr que para cada elemento queden en su rama derecha todos los elementos mayores, y los menores en la rama izquierda, lo cual es mostrado en la consola después de ingresar los datos. También a continuación nos muestra los datos ordenados de distintas formas, “en orden” que es primero el hijo izquierdo seguido de su padre y finalmente el hijo derecho, “pre orden” que es primero el padre, luego el hijo izquierdo y finalmente el hijo derecho, y “post orden” que es hijo izquierdo, luego hijo derecho y finalmente el padre.

GRAFO

Es una estructura de datos no lineal en que cualquier elemento de la estructura puede estar enlazado o relacionado a cualquier otro de la estructura. Los elementos los llamaremos nodos, y la relación de un nodo con otro se llamará su arista.

*Código en APÉNDICE E.

En este código podemos observar que se definen dos estructuras (“nodo” y “arista”) en el principio del código, y luego una serie de funciones por separado para poder ejecutar las distintas operaciones básicas de un grafo a través de un menú de opciones que el usuario puede ir seleccionando, para agregar nodos y sus aristas, también hay una opción que nos permite ver el grafo de manera de texto en el que nos presenta todos los nodos y la lista de adyacencias que nos mostrará los nodos asociados a cada cual, y finalmente otra opción que nos permite visualizar las aristas de un nodo en particular

...

Descargar como (para miembros actualizados)  txt (36.1 Kb)   pdf (342.4 Kb)   docx (385.8 Kb)  
Leer 38 páginas más »
Disponible sólo en Clubensayos.com