Está en la página 1de 4

ALG

ORITMOS Y ESTRUCTURAS DE DATOS

(100000SI42)

CARRERA:

INGENIERÍA DE SISTEMAS E INFORMÁTICA


INGENIERÍA DE SOFTWARE

DOCENTE:

MAG. ING. LUIS MANUEL SAAVEDRA SANDOVAL

CRÉDITOS:

ENSEÑANZA DE CURSO:

VIRTUAL EN VIVO

HORAS SEMANALES:

2024
AVANCE DE PROYECTO FINAL 1
Introducción a los Algoritmos:

1. Definir qué es un algoritmo y sus características.


2. Explicar el concepto de complejidad algorítmica en tiempo y memoria.
3. Analizar la complejidad de ejemplos de algoritmos básicos (sumar dos
números, calcular el promedio de una lista).
4. Implementar en un lenguaje de programación los ejemplos de algoritmos
analizados.

Introducción a las Estructuras de Datos:

1. Definir qué es una estructura de datos y explicar su importancia.


2. Clasificar las estructuras de datos en estáticas y dinámicas.
3. Describir las ventajas y desventajas de cada tipo de estructura de datos.
4. Implementar en un lenguaje de programación ejemplos de estructuras de
datos estáticas (arreglos) y dinámicas (listas enlazadas).

Métodos de Ordenamiento:

1. Investigar y explicar los diferentes métodos de ordenamiento de datos.


2. Implementar en un lenguaje de programación los algoritmos básicos de
ordenamiento: burbuja, selección e inserción.
3. Analizar la complejidad algorítmica de cada algoritmo de ordenamiento
básico.
4. Implementar en un lenguaje de programación los algoritmos avanzados de
ordenamiento: quicksort, shellsort y mergesort.
5. Comparar la eficiencia de los diferentes algoritmos de ordenamiento
mediante pruebas con diferentes conjuntos de datos.

Métodos de Búsqueda:

1. Investigar y explicar los diferentes métodos de búsqueda de datos.


2. Implementar en un lenguaje de programación la búsqueda secuencial y
binaria.
3. Analizar la complejidad algorítmica de cada método de búsqueda.
4. Comparar la eficiencia de los diferentes métodos de búsqueda mediante
pruebas con diferentes conjuntos de datos.

Estructuras de Datos Estáticas:

1. Profundizar en las operaciones con arreglos unidimensionales:


o Inserción de elementos en diferentes posiciones.
o Actualización de valores de elementos.
o Eliminación de elementos en diferentes posiciones.
2. Implementar en un lenguaje de programación las operaciones con arreglos
unidimensionales.
3. Desarrollar funciones para el recorrido, copia, comparación y clonación de
arreglos unidimensionales.

Estructuras de Datos Dinámicas:

1. Definir qué es un Tipo Abstracto de Datos (TAD) y sus características.


2. Explicar los conceptos básicos de los TADs: encapsulamiento, abstracción y
modularidad.
3. Implementar en un lenguaje de programación un TAD para una lista enlazada
simple.
4. Definir e implementar las operaciones básicas para el TAD lista enlazada:
o Agregar elementos al final.
o Eliminar elementos.
o Buscar elementos.
o Recorrer la lista.

También podría gustarte