Vous êtes sur la page 1sur 20

TRABAJO DE ESTRUCTURA DE DATOS

TEMA: LISTAS
GRUPO 1:
1. Deymer Agamez elles
2. Juan miguel Flrez Flrez
TEMAS: LISTAS
1. Concepto de listas
1.1. Creacin de una lista
1.2. Impresin de una lista
1.3. Insercin de un dato en una lista despus de un nodo dado
1.4. Insercin de un dato en una lista antes de un nodo dado
1.5. Insercin de un dato en una lista entre dos nodos dados
1.6. Ejercicios

EJERCICIO PARA DESARROLLAR: LISTAS


GRUPO 1:
1. Elaborar una funcin que reciba un apuntador al primer nodo de una lista. La funcin debe
invertir la lista. La lista debe ser invertida recorrindola solamente una vez. Al final cada nodo
debe apuntar al nodo que antes era su predecesor. La cabeza de la lista debe ser el nodo que al
comienzo estaba al final y el nodo que antes era el primero, debe tener el valor NULL.
Grficamente seria:

cab

10

15

30

cab

Al final del proceso, la misma lista debe quedar as:

10

15

30

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: LISTAS
GRUPO 2:
1. Geovanni padilla vega
2. Laura Vanessa vega arias
3. Loly luz Franco Cardona
TEMAS: LISTAS
2. Como mantener una lista clasificada ascendentemente
2.1. Creacin de una lista clasificada ascendentemente retiro de un nodo de la lista
2.2. Ejercicios
EJERCICIOS PARA DESARROLLAR: LISTAS
GRUPO 2:
2. elaborar una funcin que reciba un apuntador al primer nodo de una lista y devuelva dos
apuntadores. El primero debe apuntar a una lista conformada por los nodos impares de la lista
inicial y el segundo debe apuntar a una lista conformada por los nodos pares de la lista inicial. Al
final la lista inicial debe liberarse de la memoria. Por ejemplo si la lista inicial era:

cab

10

Las listas construidas dentro de la funcin deben ser:

10 .

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: LISTAS
GRUPO 3:
1. Eugenia Aguilar Martnez
2. Gustavo Martnez
3. Carlos Hernndez meza

TEMAS: LISTAS
3. Listas circulares
3.1. Cmo concatenar dos listas circulares
3.2. Insercin de un nodo al final de una lista circular
3.3. Retiro de un nodo de una lista circular
3.4. El famoso problema de josephus
3.5. Nodos de encabezamiento
3.6. Suma de polinomios
3.7. Ejercicios
EJERCICIOS PARA DESARROLLAR: LISTAS
GRUPO 3:
3. Escriba una funcin que reciba las listas p y q que representan dos polinomios. La funcin debe
multiplicar los dos polinomios y almacenar la respuesta en una lista W.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: LISTAS
GRUPO 4:
1. Fernando Jos ordosgoitia
2. Boris polo meja
3. Enalfi villalba Hernndez
TEMAS: LISTAS
4. Listas doblemente encadenadas
4.1. Insercin de un dato en una lista doblemente encadenada despus de un nodo dado
4.2. Retiro de un nodo de una lista doblemente encadenada
4.3. Listas circulares doblemente encadenadas
4.4. Liberacin de los nodos de una lista circula doblemente encadenada
4.5. Creacin de una lista circular doblemente encadenada
4.6. Copia de una lista p en una lista q
4.7. Suma de dos nmeros muy grandes
4.8. Impresin de una lista recursivamente

EJERCICIOS PARA DESARROLLAR: LISTAS


GRUPO 4:

4. Elaborar una funcin que reciba dos listas circulares doblemente encadenadas que contienen
dos nmeros muy grandes y devuelva la multiplicacin entre ellos. Suponga que los nmeros son
mayores o iguales a 0.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: COLAS Y PILAS

GRUPO 5:
1. Tania vanegas vanegas
2. Eduardo romero garizado

TEMAS: COLAS Y PILAS


EJERCICIOS PARA DESARROLLAR: COLAS Y PILAS
5. Colas
5.1. Colas implementadas usando arreglos
5.2. Ejercicios

GRUPO 5:
5. Elaborar las funciones iniciar(), vacia(), sumar(), atender() utilizando el siguiente arreglo:
int a[100];
donde a[0] es usado para indicar el frente de la cola, a[1] es usado para indicar el final, a[2] es
usado para indicar el numero de objetos y los elementos a[3] hasta a[99] son usados para
almacenar los objetos de la estructura.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: COLAS Y PILAS
GRUPO 6:
1. Yoneidis Valds altamar
2. Luis Eduardo Fernndez esalas
3. Brayan Bohrquez Domnguez

TEMAS: COLAS Y PILAS


5.2. Construccin de una estructura compuesta por dos colas
5.3. Estructura de que (bicolas)

EJERCICIOS PARA DESARROLLAR: COLAS Y PILAS


GRUPO 6:
6. Se define una bicola restringida para la entrada, a una estructura deque donde solamente se
puedan insertar objetos por la izquierda y se puedan retirar objetos ya sea por la izquierda o por la
derecha. Disear las funciones:

iniciar_rd()
Insertar_rd()
retirar_rd()

que manejen adecuadamente una bicola restringida para la entrada.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: PILAS
GRUPO 7:
1. Sandra milena Ospina
2. Jonathan stick tena
3. Laura sastoque

TEMAS:
7. pilas
7.1. Representacin de una pila utilizando listas simples
7.2. Notaciones infijo, posfijo y prefijo

EJERCICIOS PARA DESARROLLAR: PILAS


GRUPO 7:
7. Convertir las siguientes expresiones en posfijo a infinito:
a) pqrst - + *uv * b) lm-n+opq - +

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: PILAS
GRUPO 8:
1. Marilyn castro guerra
2. Yunis Miranda mercado
TEMAS:
8. Evaluacin de expresiones escritas en posfijo
8.1. Transformacin de notacin infijo a notacin posfijo, cuando no existen parntesis
8.2. Transformacin de notacin infijo a notacin posfijo, cuando existen parntesis
8.3. Evaluacin de expresiones escritas en infijo

EJERCICIOS PARA DESARROLLAR: PILAS


GRUPO 8:
Elaborar las siguientes funciones:
a)
b)
c)
d)

pre_a_pos() Convierte un arreglo prefijo a un arreglo posfijo


pos_a_pre() Convierte un arreglo posfijo a un arreglo prefijo
pre_a_in() Convierte un arreglo prefijo a un arreglo infijo
pos_a_in() Convierte un arreglo posfijo a un arreglo infijo

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: ARBOLES BINARIOS
GRUPO 9:
1. Fabio Mendoza
2. ngel Prez
3. Andrs Crespo

TEMAS:
9. DEFINICIONES
9.1. CREACIN DE UN ARBOL BINARIO
9.2. FORMAS DE RECORRER UN ARBOL BINARIO
9.3. EJERCICIOS

EJERCICIO PARA DESARROLLAR: ARBOLES BINARIOS


GRUPO 9:
9. Dado el siguiente arbol binario:

Certificar que al recorrer el arbol, los siguientes resultados son correctos:

preorden ABCDFGEIJ
inorden BAFDGCIEJ
posorden BFGDIJECA

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 10:
TEMAS:
1. GRAFOS
1.1. DEFINICIONES
1.1.1.GRAFO
1.1.2.GRAFO DIRIGIDO
1.1.3.ADYACENCIA
1.1.4.INCIDENCIA
1.1.5.COMPONENTES CONECTADAS SEPARADAMENTE
1.1.6.EJERCICIOS

EJERCICIO PARA DESARROLLAR: GRAFOS


GRUPO 10:
1. Dado el siguiente grafo, Realizar un programa en C++ o Java, que permita dibujar este grafo
dirigido.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 11:
TEMAS:
1.1.7.GRAFOS Y DIGRAFOS FUERTEMENTE CONECTADOS
1.1.8.GRAFOS Y DIGRAFOS DEBILMENTE CONECTADOS
1.1.9.CAMINO SIMPLE
1.1.10. GRAFO EULERIANO
1.1.11. GRAFO HAMILTONIANO
1.1.12. GRADO DE UN VERTICE
1.1.13. EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 11:
1. Un grafo es Euleriano si cada vrtice tiene un grado par. Realizar un programa en C++ ++ o
Java, que permita crear una funcin que reciba un grafo en una lista de adyacencia y devuelva
1 si el grafo es Euleriano. Se debe devolver 0 si el grafo no es Aureliano.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 12:
TEMAS:
1.1.14.
1.1.15.
1.1.16.
1.1.17.

GRAFOS REGULARES
ARCO CICLICO
MULTIGRAFO
EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 12:
1. Dado el siguiente grafo, Realizar un programa en C++ ++ o Java, que permita dibujar este
Multgrafo.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 13:
TEMAS:
1.1.18. GRAFOS SIMPLES
1.1.19. GRAFOS COMPLEJOS
1.1.20. EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 13:
1. Dado el siguiente grafo, Realizar un programa en C++ ++ o Java, que permita dibujar este
grafo Complejo.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS

GRUPO 14:
TEMAS:
1.2.
1.3.
1.4.
1.5.
1.6.

ALMACENAMIENTO DE UN GRAFO EN LA MEMORIS DE UN COMPUTADOR


UTILIZACIN DE UNA LISTA O UNA MATRIZ DE ADYACENCIA
LISTA DE ADYACENCIA INVERTIDA
MATRIZ DE CAMINOS
EJERCICIOS
EJERCICIOS PARA DESARROLLAR: GRAFOS

GRUPO 14:
1. Realizar un programa en C++ ++ o Java, que permita crear un grafo representado mediante
listas de adyacencia, implementa un mtodo que calcule el nmero de aristas y que calcule el
grado del grafo que tiene la componente conexa que contiene un vrtice dado.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 15:
TEMAS:
1.7. DIGRAFOS FUERTEMENTE CONECTADOS
1.8. ALGORITMO PARA CALCULAR LA MATRIZ DE CAMINOS
1.9. CLAUSURA TRANSITIVA DE UN DIGRAFO
1.10.
ALGORITMO DE WARSHALL
1.11.
EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 15:
1. Tomando el siguiente digrfico:

Realizar un programa en C++++ o Java, que permita calcular el nmero de caminos de longitud
n=4 entre cualquier vrtice y los dems.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 16:
TEMAS:
1.12.
1.12.1.
1.12.2.
1.12.3.

FORMAS DE RECORRER UN GRAFO


RECORRIDO A LO ANCHO
RECORRIDO EN PROFUNDIDAD
EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 16:
1. Dado el siguiente grafo, Realizar un programa en C++ ++ o Java, que permita dibujar el arbol

expandido resultante al recorrer la estructura a lo ancho comenzando desde el vrtice 1.

Suponga que la lista de adyacencia est conformada as:

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 17:
TEMAS:
1.13.
1.14.
1.15.
1.16.
1.17.
1.18.

LINEAS DE REGRESO AL RECORRER UN GRAFO A LO ANCHO


ALGORITMO PARA GENERAR LAS LINEAS DE REGRESO
LINEAS DE REGRESO AL RECORRER UN GRAFO EN PROFUNDIDAD
NODOS DE CORTE
LINEAS DE CRUCE EN UN DIAGRAFO
EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 17:
1. Realizar un programa en C++ ++ o Java, que permita crear un rbol de expansin resultante de
un recorrido sobre un grafo no dirigido, qu tipo de arcos (a parte de los del rbol) pueden
aparecer si el recorrido es una bsqueda en profundidad o una bsqueda en anchura? Qu
arcos aparecern si el recorrido (en profundidad o en anchura) es aplicado sobre un grafo
dirigido?

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 18:
TEMAS:
2. APLICACIONES DE LOS GRAFOS
2.1. ALGORITMO DE PRIM
2.2. ALGORITMO DIJKSTRA
2.3. ALGORITMO DE FLOYD
2.4. ALGORITMO DE KRUSKAL
2.5. EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 18:
1. Realizar un programa en C++ ++ o Java, que permita utilizar el algoritmo de Dijkstra para
encontrar los caminos ms cortos que van desde el nodo a hasta los restantes nodos, en el
siguiente grafo dirigido. Mostrar los valores S, D y P para todos los pasos de ejecucin del
algoritmo. A partir del resultado, encontrar cul es el camino ms corto desde a hasta d.

TRABAJO DE ESTRUCTURA DE DATOS


TEMA: GRAFOS
GRUPO 19:
TEMAS:
2.6. EXCENTRICIDAD DE UN VERTICE EN UN GRAFO
2.7. VERTICE MAS CENTRAL DE UN GRAFO
2.8. MAXIMO NUMERO DE ARCOS INDEPENDIENTES
2.9. MAXIMO NUMERO DE VERTICES INDEPENDIENTES
2.10.
EJERCICIOS

EJERCICIOS PARA DESARROLLAR: GRAFOS


GRUPO 19:
1. Realizar un programa en C++ ++ o Java, que permita crear una funcin que reciba un grafo en
una lista de adyacencia y devuelva un arreglo de cada vrtice. El arreglo es de tipo GRADO
definido as:
typedef struct GRADO GRADO;
struct GRADO{
int v;
int grado;
};
GRADO grados [MAXIMO];

BIBLIOGRAFIA:
ESTRUCTURA DE DATOS EN C++, Cesar A. Becerra Santamara, 4 Edicin, Editorial Kimpres Ltda.
http://datateca.unad.edu.co/contenidos/301305/Contenido_en_linea/Modulo_3013052012_HTML/curso_estructura_de_datos.html
http://dis.um.es/~ginesgm/temas/tema4-1/
http://informatica.uv.es/iiguia/AED/teoria/apuntes/cuatr2/tema15.pdf

Nota: Cada grupo debe entregar un trabajo escrito con normas ICONTEC (Formato .Docx enviado
por la plataforma como nota del segundo corte) sobre su tema y ejercicio y deben preparase
todos los integrantes porque solo uno tomado al azar tendr que exponer por los dems el tema y
el ejercicio planteado.

Rubrica de Evaluacin:

Exposicin del tema: 20% del valor de la nota


Ejercicio propuesto de la exposicin: 30% del valor de la nota
Examen final: 50% del valor de la nota

Vous aimerez peut-être aussi