HACK A BOSS
FormaciónEvaluacionesPerfil
Volver
  • En directo

Algoritmos y estructuras de datos iniciación

6h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • Algoritmos y estructuras de datos

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Este curso introduce los fundamentos de algoritmos y estructuras de datos para participantes que empiezan a resolver problemas de programación con criterio técnico. El curso cubre estructuras lineales como arrays, listas, pilas y colas; recorridos y operaciones básicas sobre colecciones; interpretación inicial de complejidad temporal y espacial; búsqueda lineal, búsqueda binaria y ordenamientos simples; selección razonada de estructuras sencillas; y descomposición de problemas en pasos algorítmicos claros. Al finalizar, el participante será capaz de resolver problemas básicos con estructuras adecuadas, explicar el comportamiento de sus soluciones y justificar decisiones simples antes o durante la implementación.

Al finalizar el curso, el participante será capaz de:

  • Reconocer y utilizar arrays, listas, pilas y colas, identificando su organización lineal y el comportamiento básico de acceso, inserción o extracción en casos sencillos
  • Recorrer arrays o listas y operar sobre sus elementos en tareas sencillas como buscar un valor, contar ocurrencias, acumular resultados o construir una salida derivada
  • Interpretar la complejidad temporal y espacial de algoritmos básicos a nivel introductorio, comparando soluciones simples y entendiendo el impacto aproximado del crecimiento del problema
  • Aplicar algoritmos básicos de búsqueda y ordenamiento en casos prácticos sencillos, usando búsqueda lineal, búsqueda binaria sobre datos ordenados y métodos de ordenamiento simples a nivel introductorio
  • Seleccionar una estructura de datos sencilla según el problema planteado, justificando esa elección a partir de ventajas y límites básicos frente a otras alternativas cercanas
  • Resolver problemas sencillos descomponiéndolos en pasos algorítmicos claros, ordenados y comprobables antes o durante su implementación
  1. Estructuras lineales básicas Arrays, listas, pilas y colas; organización de los datos, acceso por posición, inserción, extracción, comportamiento LIFO y FIFO, diferencias prácticas entre estructuras
  2. Recorridos y operaciones sobre colecciones Procesamiento elemento a elemento, acumuladores, contadores, búsqueda de valores, construcción de salidas derivadas, condiciones simples durante el recorrido
  3. Complejidad básica e impacto del tamaño de entrada Interpretación inicial de complejidad temporal y espacial, coste constante, lineal y cuadrático, comparación de soluciones simples, relación entre tamaño de entrada y trabajo realizado
  4. Búsqueda y ordenamiento elemental Búsqueda lineal, búsqueda binaria sobre datos ordenados, ordenamientos simples por comparación, condiciones necesarias para aplicar cada algoritmo y errores frecuentes
  5. Selección de estructuras y descomposición de problemas Elección entre array, lista, pila y cola según el patrón del problema; identificación de entrada y salida, definición de pasos algorítmicos, comprobación con casos simples
  • Python 3.11 o superior para implementar ejemplos y ejercicios básicos
  • Entorno de desarrollo con ejecución de scripts, como VS Code o PyCharm
  • Terminal o consola para ejecutar programas sencillos y comprobar salidas
  • pytest 8.x o superior opcional para validar funciones con casos de prueba básicos
  • Git opcional para guardar iteraciones de los ejercicios

Ninguno requerido. Se recomienda familiaridad básica con un lenguaje de programación y capacidad para leer funciones sencillas, variables, condicionales y bucles. No es necesario haber estudiado estructuras de datos ni análisis de complejidad previamente.