Notas Universidad
Contenido
Inicializando búsqueda
cardel/notasUniversidad
Notas Universidad
2023 II
2024 I
2024 II
2025 I
2025 II
2026 I
2026 II
Notas Universidad
cardel/notasUniversidad
Notas Universidad
2023 II
2023 II
2023-II
ADA I
ADA I
0. Explicación Notas de Cornell (1)
1. Relaciones de recurrencia método de arbol
2. Relaciones de recurrencia método del maestro
3. Método inductivo
4. Lista enlazada
ADA I
Funcional Jueves
Funcional Jueves
0. Explicación Notas de Cornell (1)
1. Abstracción de datos
2. Abstracción de datos
Funcional - Jueves
Funcional Martes
Funcional Martes
0. Explicación Notas de Cornell
1. Conceptos abstracción de datos
Funcional-Martes
Redes Neuronales
Redes Neuronales
Ejemplos postman
Redes Neuronales
2024 I
2024 I
FLP
IA innovador
Introducción análisis numérico
Programación funcional (PFC)
Programación imperativa
2024-I
Vida artificial
Arquitecturas en la nube
Arquitecturas en la nube
Contenido del curso
Arquitecturas en la nube
Sesión 01: Introducción a la nube I
Sesión 02: Introducción a la nube II
Sesión 03: PAAS/IAAS/SAAS I
Sesión 04: Ejemplo PaaS
Sesión 05 IaaS II, PaaS I
Sesión 06: Ejemplo implementación
Sesión 07 Tendencias en Cloud y Clusterización
Sesión 08: Introducción AWS
Sesión 09: Modelo de costos / Infraestructura global / Seguridad I
Sesión 10 VPC
Sesión 11: Route 53, Cloudfront, EC2
Sesión 12: Computo II almacenamiento (datos y bd)
Sesión 13. Bases de datos / Arquitectura / Monitoreo
Sesion 03
Sesion 03
Parte 1 despliegue app
Parte 2: Funciones lambda (AWS)
Parte 3 Azure functions (Microsoft)
Sesion 05
Sesion 05
Ejemplo 1: SDK con S3
Ejemplo 2: SDK con Azure container
Ejemplo 3: Creación de base de datos (RDS) SDK
Sesion 06
Sesion 06
Solución 1: AWS
Solución 2: Azure
Sesion 07
Sesion 07
Parte 1: Tendencias en cloud
Parte 2: Clusters
Parte 3: Infraestructura como código
Sesion 08
Sesion 08
Conceptos sobre AWS
Práctica de uso de EC2 en el lab
Sesion 10
Sesion 10
Laboratorio 1 con AWS Cli
Teoria redes y seguridad en AWS
Sesion 13
Sesion 13
Arquitectura
Balanceo de carga y monitoreo
Bases de datos
Sesion09
Sesion09
Parte 1: Costos
Parte 2: Infraestructura AWS
Parte 3: Seguridad 1
FLP
FLP
Cierre del curso
Sesion 3: 29 de Feb Representación de datos
Sesion 4: 07 de Marzo: AST (Arboles de sintaxis abstracta)
Sesión 10: Tipos
Sesión 11 Inferencia de tipos
Sesión 12: Objetos simples
Sesión 13: Objetos planos
Sesión 2: 22 de Feb: Especificación inductiva y recursiva
Sesión 9: 18 de Abril Asignación
Sesión 9: 18 de Abril: Paso por referencia
IA innovador
IA innovador
Sesion 12 de Julio AWS I
Sesion 20 de Mayo: Problemas con grandes datos y estrategias
Sesion 24 Junio Capstone project
Sesiones de retos (3 Jul, 5 Jul)
Sesión 05 de Junio Teoria Procesamiento de Lenguaje natural y RNN
Sesión 06 de Julio (Master class)
Sesión 06 de Mayo Repaso
Sesión 07 de Junio Práctica PLN
Sesión 08/10 de Julio Retos Jupyter
Sesión 08 de Mayo Repaso II parte
Sesión 10 de Mayo: Estrategias de entrenamiento
Sesión 12 de Junio Cocreación A
Sesión 14 de Junio: Comentarios sobre cocreación B
Sesión 15 de Mayo Función de activación
Sesión 15 de julio AWS II
Sesión 17 de Julio AWS III
Sesión 17 de Junio Comentarios retos
Sesión 19 de Junio AWS IV
Sesión 19 de Junio: Autoencoders I
Sesión 22 de Julio
Sesión 22 de Junio: Autoencoders II
Sesión 22 de Mayo Redes Convolucionales + imágenes
Sesión 24 de Junio: Practica autoencoders
Sesión 24 de Mayo Tensorflow (imagenes)
Sesión 25 de Mayo: Master class
Sesión 26 y 28 de Junio Autoencoders variacionales / Generative adversarial network
Sesión 27 de Mayo Redes Recurrentes
Sesión 29 de Mayo Redes Convolucionales
Sesión 31 de Mayo Series de tiempo
Sesión 14 de Junio Comentarios sobre cocreación
Sesión 14 de Junio Comentarios sobre cocreación
Recomendaciones fase III
Recomendaciones fase III
Datos
Modelos
Plan de capacitación
Presentación de la información
Presentación de su idea
Recomendación: Probar otro modelo
Soporte del problema
Untitled
Introducción análisis numerico
Introducción análisis numerico
Cierre del curso
Sesion 6: Ajuste del BP
Sesión 09: Procesamiento de texto e imágenes
Sesión 10: Errores
Sesión 11: parte 1: Errores II
Sesión 12: Descomposición de matrices
Sesión 2: Introducción RN
Sesión 3: Perceptrón y adaline
Sesión 4: Perceptrón multicapa 06 de Marzo
Sesión 5: Métricas perceptrón multicapa
Sesión 7: Procesamiento de datos
Sesión 8: Metricas y procesamiento de salidas
Programación funcional
Programación funcional
Cierre del curso
Sesión 02: Elementos PF
Sesión 03: 27 de Feb
Sesión 05: Extendiendo la abstracción
Sesión 08 Colecciones
Sesión 10: Concurrencia de procesos
Sesión 11: Paralelismo
Sesión 4: 05 de Marzo Funciones anónimas, currificación y abstracción
Sesión 6: Reconocimiento de patrones
Sesión 7: Funciones alto orden
Sesión 9: Introducción concurrencia
Programación imperativa
Programación imperativa
Cierre del curso
Sesión 09: Arreglos multidimensionales
Sesión 1. Metodología para resolver problemas
Sesión 10: GUI
Sesión 2: Introducción a programar
Sesión 3: Variables y condicionales
Sesión 4: Funciones I
Sesión 5: 13 de Marzo Funciones II
Sesión 6: Ciclos for
Sesión 7: Ciclos while
Sesión 8: Arreglos unidimensionales
Vida artificial
Vida artificial
Resumen del curso
Sesión 01 20 de Feb
Sesión 03: Redes Complejas
Sesión 04: Fractales
Sesión 05: Teoria de Juegos
Sesión 06 Algoritmos evolutivos
Sesión 07 - Caos
Sesión 08: Automatas celulares
Sesión 2 P1: Sistemas complejos
Sesión 2 P1 Sistemas complejos
Sesión 2 P1 Sistemas complejos
Untitled
Untitled
Ejemplo MTU
Gradualidad: Experimentos mentales
Gradualidad
MTU
Sistema complejo
2024 II
2024 II
ADA II
Capacitación Power Bi y Python UNAL
FLP
Infraestructuras
2024-II
Programación funcional
Redes Neuronales
ADA II
ADA II
Sesion 05: Programacion voraz
Sesión 02: Divide y vencerás con memorización
Sesión 03: Programación dinámica I
Sesión 04: Programación dinámica II
Sesión 06: Programación voraz II
Sesión 07: Optimización
Sesión 09: Repaso
Sesión 11 Problemas computacionales
FLP
FLP
Sesión 01: Repaso Racket
Sesión 02: Especificación de Datos y alcance
Sesión 03: Representación de datos abstractos
Sesión 04: Árboles de sintaxis abstracta
Sesión 05: Interpretador
Sesión 06: Condicionales, ligaduras y procedimientos
Sesión 07: Procedimientos recursivos
Sesión 08: Sesión de repaso
Sesión 09: Asignación y paso por referencia
Infraestructuras
Infraestructuras
Grupo 50
Grupo 51
Recursos
Grupo 50
Grupo 50
Sesión 01: Introducción a la paralelización
Sesión 04 de Septiembre: Introducción paralelización II
Sesión 05: Perfilado
Sesión 06: Procesos e hilos
Sesión 07: OpenMP
Sesión 08: Sistemas distribuidos
Sesión 09: Repaso
Sesión 10: Docker y kubernetes
Sesión 11: Balanceadores
Grupo 51
Grupo 51
Clase 02: Introducción a la paralelización
Clase 03: Introducción paralelización II (Ejercicio)
Clase 04: Paralelización II
Clase 05 Profiling
Clase 06 Hilos y procesos en Python
Clase 07 OpenMP
Clase 08: Repaso
Clase 09: Introducción sistemas distribuidos
Clase 11: Docker y kubernetes
Clase 12: Balanceadores carga
Programación funcional
Programación funcional
Sesion 09: Repaso de conceptos de PF
Sesión 02. Elementos de PF
Sesión 03: Funciones y procesos
Sesión 04. Funciones de alto orden
Sesión 05: Funciones y datos
Sesión 06: Listas I
Sesión 07: Listas II
Sesión 08: Colecciones I
Sesión 10: Colecciones II
Sesión 11: Introducción al parelismo
Redes Neuronales
Redes Neuronales
Introducción y elementos de las RN
Sesión 02 Perceptrón y adaline
Sesión 03: Procesamiento de datos I
Sesión 04: Procesamiento de datos II
Sesión 05: Tensorflow
Sesión 08. Perceptrón multicapa
Sesión 09: Repaso
Sesión 10: Regularización y optimizadores
2025 I
2025 I
Algoritmos I Jala University
Algoritmos II
Estructuras discretas II ICESI
FLP
Infraestructuras
Programación funcional
Programación por restricciones
2025-1
Algoritmos I Jala University
Algoritmos I Jala University
Clase 1. Algoritmos
Clase 2 Complejidad
Clase 4: Ordenamiento
Clase 5 Algoritmos de búsqueda
Clase 6: Estructuras de datos I
Clase 7: Estructuras de datos II
Clases 3: Complejidad recurrencias y estrategias algorítmicas
Notas
Recursos adicionales
Algoritmos II
Algoritmos II
Clase 10 Ejemplos de demostración NP-HARD
Clase 2: Divide y vencerás con memorización. Programación dinamica
Clase 3: Multiplicación de matrices y elementos programación dinámica
Clase 4: Problema de la mochila y programación Voraz 1
Clase 5: Algoritmos voraces y algoritmos sobre grafos
Clase 6: Introducción a la optimización
Clase 7: Método gráfico
Clase 8: Forma estándar y Simplex
Clase 9: Tablero Simplex y Branch and Bound
Introducción a la complejidad computacional
Reducción SAT a 3-SAT
Estructuras discretas II ICESI
Estructuras discretas II ICESI
Grupo 01
Grupo 03
Grupo 05
Grupo 01
Grupo 01
Clase 02 de Mayo: Funciones de alto orden
Clase 05 de Marzo. Inducción estructural y generalizada
Clase 07 de Mayo: Expresiones for, teoremas de teoria de números
Clase 10 de Mayo: Teorema de residuo chino y representación números grandes
Clase 11 de Abril Teoría de Números II
Clase 12 de Feb Relaciones
Clase 12 de Marzo: Funciones, procesos. Relaciones recurrencia
Clase 19 de Feb Listas
Clase 19 de Marzo Relaciones de recurrencia II
Clase 23 de Mayo: RSA y TAD
Clase 25 de Abril Repaso teoría de números
Clase 26 Marzo: Relaciones RR y Funciones alto orden
Clase 26 de Febrero Inducción matemática
Repaso de RSA y comentarios sobre la TI
Clase 11 de Abril Teoría de números
Clase 11 de Abril Teoría de números
Ejemplos iniciales clase
Grupo 03
Grupo 03
Clase 02 de Mayo: Funciones de alto orden, colecciones y expresiones for
Grupo 05
Grupo 05
Clase 02 de Mayo Colecciones, funciones de alto orden y expresiones for
Clase 05 de Febrero Relaciones
Clase 05 de Marzo: Inducción estructural
Clase 07 de Mayo: Expresiones for, congruencias lineales
Clase 11 de Abril: Teoría de números II
Clase 12 de Febrero
Clase 12 de Marzo de 2025 Relaciones de recurrencia I
Clase 14 de Mayo: Sistemas de congruencias, teorema del residuo chino y sistemas de números
Clase 19 de Feb Listas
Clase 19 de Marzo: Relaciones de recurrencia II
Clase 23 de Mayo de 2025 Criptografia y RSA
Clase 25 de Abril repaso teoría de números
Clase 26 de Febrero: Inducción matemática
Clase 28 de Mayo: Apuntes sobre la TI
FLP
FLP
Clase 1: Repaso
Clase 10: Inferencia de tipos
Clase 11: Objetos
Clase 2 Abstracción de datos
Clase 3: Representación de datos
Clase 4. Árboles de Sintaxis Abstracta (AST)
Clase 5: Interpretación y compilación
Clase 6: Condicionales, locales y procedimientos
Clase 7: Procedimientos recursivos
Clase 8: Asignación, paso por referencia
Clase 9: Chequeo de tipos
Infraestructuras
Infraestructuras
Semana 10: Docker y kubernetes II
Semana 11: Kubernetes / Docker Swarm
Semana 2: Introducción a la paralelización
Semana 3: Ejemplos de paralelización
Semana 4. Profiling
Semana 5. Multithreading y multiproceso
Semana 6: OpenMP
Semana 7 Herramientas de profiling en Linux
Semana 8: Intro Cloud y Pipelines CI/CD
Semana 9: Docker y Kubernetes I
Semana 11 Kubernetes Docker Swarm
Semana 11 Kubernetes Docker Swarm
Crear un Deployment
Programación funcional
Programación funcional
Clase 10: Introducción a Programación Concurrente (PC)
Clase 11: Complejidad de la paralelización
Clase 12: Paralelismo de tareas
Clase 14: Paralelismo de datos
Clase 2. Elementos de programación funcional
Clase 3: Funciones y procesos
Clase 4: Funciones de alto orden
Clase 5: Funciones y datos
Clase 6: Listas I
Clase 7: Listas II
Clase 8 Colecciones I
Clase 9: Colecciones II
Programación por restricciones
Programación por restricciones
Clase 10 Solvers completos
Clase 11. Consistencia
Clase 12: Solvers incompletos
Clase 13: Propagación y búsqueda
Clase 2: Introducción a CSP
Clase 3: Generalidades de CSP I
Clase 4: Generalidades de CSP II
Clase 5: Modelado básico en Minizinc
Clase 6: Modelos complejos I
Clase 7: Modelos complejos II
Clase 8: Modelos complejos III
Clase 9 Modelos complejos IV
2025 II
2025 II
Cursos 2025-II
ADA II
ADA II
Sesiones
Clase 1
Clase 1
Contenido
Divide y vencerás
Ejemplo de divide y vencerás con memorización
Clase 10
Clase 10
Objetivos
Programación entera
Vertex Cover
Clase 11
Clase 11
Objetivos
Demostración que MaxClique es NPC
Clase 2
Clase 2
Objetivo de clase
Elementos de programación dinámica
LCS
Clase 3
Clase 3
Objetivos
Problema MCM (Multiplicación de Matrices)
Caracterización de la Subestructura Óptima
Clase 4
Clase 4
Objetivos
Definicion
Problema de la mochila 0/1
Que es
Clase 5
Clase 5
Algoritmo de Dijisktra
Arbol de recubrimiento minimo
Objetivos
Problema de cambio de monedas
Clase 6
Clase 6
Objetivos
Forma de holgura
Introducion optimizacion
Transformar un problema a forma estandar
Clase 7
Clase 7
Objetivos
Generalidad de programacion lineal
Metodo Simplex 2D (Grafico)
Metodo Simplex nD (Holgura)
Metodo Simplex nD (Tablero)
Resumen
Clase 8
Clase 8
Objetivos
Programacion entera
Resumen
Simplex no factible
Clase 9
Clase 9
3SAT
Objetivos
Problema SAT
Problemas NPC
Problemas computacionales
Problemas computacionales.
Clasificación de maquinas de Turing
Parcial 1
Parcial 1
Enunciado parcial
Algoritmica I Jala University
Algoritmica I Jala University
Clases
Clase 1
Clase 1
Resumen: Fundamentos de Algoritmia
Clase 2
Clase 2
Fundamentos de algoritmos
Clase 3
Clase 3
Algoritmos de fuerza bruta
Definición
Definición
Contenido
Definiciones
Clase 4
Clase 4
Algoritmo buble sort
Algoritmo counting sort
Algoritmo de insertion sort
Algoritmo de mergesort
Algoritmos de ordenamiento
Recursos
Clase 5
Clase 5
Descripción
Definición
Contenido
Divide y vencerás
Clase 6
Clase 6
Introducción
Contenido
Introducción
Introducción
Clase 7
Clase 7
Cola de prioridad
Contenido
Lista doblemente enlazada
Lista enlazada circular
Lista simplemente enlazada
FLP
FLP
Clases
Clase 1
Clase 1
Recursos
Gramaticas
Definición
Clase 10
Clase 10
Objetivos
Sistema de tipos para el intérprete
Introducción a los sistemas de tipos
Clase 11
Clase 11
Objetivos
Interpretador tipos chequeo I
Interpretador tipos chequeo II
Evaluación de procedimientos
Let
Interprete chequeo parte 1
Clase 12
Clase 12
Objetivos
Ejemplo 1 Inferencia
Ejemplo 2 Inferencia
Interpretador inferencia
Primitivas
Interprete de chequeo
Clase 13
Clase 13
Objetivos
Conceptos básicos de programación orientada a objetos
Objetos planos
Objetos simples
Sintaxis de la programación orientada a objetos II
Sintaxis de la programación orientada a objetos I
Clase 2
Clase 2
Alcance
Objetivos
Ocurrencia
Especificacion recursiva de programas
Representacion gramaticas
Representación inductiva
Clase 3
Clase 3
Ambientes
Objetivos
Estrategias de representacion TAD
TAD
Clase 4
Clase 4
Arboles de sintaxis abtracta
Objetivos
Define-datatype
Arboles binarios
Ejemplo con ambientes
Definiciones
Clase 5
Clase 5
Objetivos
Resumen
Interpretador
Introduccion Interpretador
Compilados
Clase 6
Clase 6
Objetivos
Condicionales
Ligaduras locales
Procedimientos
Clase 7
Clase 7
Preambulo
Ejercicio
Evaluación procedimiento recursivos
Implementación de procedimientos recursivos I
Modificaciones a la gramática
Resumen
Clase 9
Clase 9
Ambientes recursivos
Asignación
Objetivos
Implementacion referencia
Implementación del set
Interprete asignación
Interprete paso por referencia
Paso valor y referencia
Clase
Opcional 1
Opcional 1
Punto 1 Abstracción de datos
Parcial 1
Parcial 1
Parcial
Parcial
Solución examen
Punto 1 Listas Python
Punto 2 Análisis de código
InfraestructuraUSB
InfraestructuraUSB
Cronograma
Sesion 01
Sesion 01
Introducción
Que son
Que son
4. On premises
Contenido
Sesion 02
Sesion 02
Servicios cloud
Contenido
Guía de Clase: Servicios IaaS, PaaS y SaaS en AWS y Azure
Sesion 03
Sesion 03
Definiciones
Contenido
FaaS (Function as a Service) en AWS y Azure
Sesion 04
Sesion 04
Apuntes
Contenido
Taller Docker
Sesion 05
Sesion 05
Apuntes despliegue en AWS
Contenido
Infraestructura como código
Taller IAC
Sesion 06
Sesion 06
AWS Kinesis
Contenido
Servicios de IA en AWS
Servicios de IA en Microsoft Azure
Servicios de Mensajería en AWS
Servicios de Mensajería en Microsoft Azure
Sesion 07
Sesion 07
1. Definiciones
Contenido
1. Aspectos básicos de precios
Sobre la certificación
Sesion 08
Sesion 08
Definiciones
Buenas practicas
Contenido
Herramientas de aws para estimación de costos
Infraestructura
Definiciones
AWS Support Plans Comparison
Sesion 09
Sesion 09
Amazon VPC
AWS Service catalog
Cloudfront
Conceptos básicos
Contenido
Grupos de seguridad
AWS Organizations
Protección de datos en reposo
Route 53
Sesion 10
Sesion 10
Introducción
Introducción
Introducción
Contenido
EC2
Tipos de servicios
Modelos de precios
Sesion 11
Sesion 11
Amazon Aurora
Amazon DynamoDB
Amazon RedShift
Contenido
EBS
Introducción
RDS
S3 Glacier
Recursos
Sesion 12
Sesion 12
AWS Trusted Advisor
Autoscaling
Cloud Watch
Contenido
Elastic load Balancing
Fiabilidad
¿Que es?
InfraestructurasUV
InfraestructurasUV
Corte 1
Clase 10
Clase 10
Arquitecturas de Sistemas Distribuidos
Objetivos
GitHub Actions: Automatización de CI/CD Integrada
Introducción a los Sistemas Distribuidos
Pipelines CI/CD: Automatización para Desarrollo Ágil
Clase 11
Clase 11
Objetivos
Docker
Virtualización
Clase 12
Clase 12
Objetivos
Docker
Limitaciones de Docker
Clase 13
Clase 13
Objetivos
Ejemplo de despliegue
Qué es
Clase 2
Clase 2
Contenido
Ley ahmdal
Localidad memoria cache
Paralelizacion
Resumen
Clase 3
Clase 3
Resumen
Explicación Detallada del Código con TBB (Threading Building Blocks)
Compilación con lpthreads
Paralelización en C++
Clase 4
Clase 4
Ambientes virtuales
Objetivos
¿Qué es el profiling?
Pyinstrument
Perfiladores time y timeit
cProfile
Clase 5
Clase 5
Objetivos
Instrucciones AVX
Resumen AVX
Clase 6
Clase 6
Objetivos
Hilos y procesos
Multiproceso en Python I
Multiproceso en Python II
Librería Thread
Clase 7
Clase 7
Objetivos
OpenMP I
OpenMP II
OpenMP III
Problema localizacion
Resumen
Clase 8
Clase 8
Objetivos
Perf
Tipos de salida S.O
Valgrind
top
Opcional
Opcional
Punto 1 Estudio de herramienta
Parcial 1
Parcial 1
Resolución de problema
Análisis de caso
Solucion
PFC
PFC
G50
G50
Corte 1
Clase1
Clase1
Contenido
Programacion funcional
Clase10
Clase10
Abstracción parallel
Abstracción task
Objetivos
Computación paralela
Ejercicio
Paralelismo en JVM
Clase11
Clase11
Benchmarking
Objetivos
Complejidad de Programas Paralelos
Ejercicio: Paralelización de Sumatoria Geométrica
Ley Amhdal
Resumen de la Clase: Complejidad y Paralelismo
Clase12
Clase12
Ejercicio
Clase13
Clase13
Objetivos
Paralelismo de tareas
Paralelismo de tareas con Reduce
Solución del ejercicio
Clase14
Clase14
Objetivos
Paralelismo de datos
Paralelismo de tareas Scan
Clase2
Clase2
Contenido
Tipos de evaluación
Principios de PF
Clase3
Clase3
Resumen
Currificación
Funciones de Alto Orden y Anónimas en Scala
Recursión de Árbol
Recursión en Programación
Clase4
Clase4
Objetivos
Currificación
Ejemplo
Funciones de alto orden
Clase5
Clase5
¿Que es ?
Definiciones
Objetivos
Jerarquia de clase
Clase6
Clase6
Objetivos
Listas
Problematica
Reconocimientos de patrones II
Clase7
Clase7
Objetivos
Map
Reduce o reducir
Resumen de Operaciones Funcionales en Scala
Tuplas
Clase8
Clase8
Objetivos
Colecciones
Ejercicio expresiones for
Expresiones for
Flatmap
Operaciones sobre secuencias
Resumen
Set
Clase9
Clase9
Objetivos.
Evaluacion perezosa
Expresiones for
Map
Problema
Programación funcional
G51
G51
Corte 1
Clase 1
Clase 1
Contenido
Imperativo
Clase 10
Clase 10
Abstracción Parallel
Abstracción Task
Objetivos
Computación Paralela y Concurrente
Concurrencia en la JVM
Ejercicio de Paralelización
Resumen de Computación Paralela y Concurrente
Clase 11
Clase 11
Benchmarking
Objetivos
Complejidad de programas secuenciales
Ejercicio: Producto Vectorial Paralelo
Ejercicio
Ley de Amdahl
Resumen de Temas de Paralelismo y Complejidad
Clase 12
Clase 12
Ejercicio
Clase 13
Clase 13
Objetivos
Paralelismo y colecciones
Paralelización del Map
Paralelización del reduce
Clase 14
Clase 14
Objetivos
Paralelismo de datos
Paralelismo de tareas Scan
Clase 2
Clase 2
Bloques de código
Caracteristicas de la programación funcional
Introducción
Evaluación por nombre
Evaluaciones de expresiones por valor
Clase 3
Clase 3
Objetivos
Currificación
Funciones anónimas en Scala
Funciones de alto orden
Recursión: Lineal vs Cola
Recursión de Árbol: El caso de Fibonacci
Clase 4
Clase 4
Objetivos
Ejemplo de abtracción
Análisis de Abstracción Funcional mediante Currificación
Funciones de Alto Orden: Análisis Técnico
Jerarquia de clases
Clase 5
Clase 5
Abstracción de datos
Objetivos
Jerarquia de clases
Clase 6
Clase 6
Objetivos
Ejemplos reconocimiento
Listas
Reconocimiento de patrones I
Reconocimiento de patrones II
Clase 7
Clase 7
Objetivos
FoldLeft y FoldRight
Map
Parametrizacion de tipos
Reduce
Resumen
Tuplas
Clase 8
Clase 8
Objetivos
Jeraquia de las colecciones
Ejercicio de flatmap
Ejercicio expresiones for
Expresiones for
Flatmap
Logicas
Resumen de la Clase - Colecciones en Scala
Set
Clase 9
Clase 9
Objetivo
Consultas con expresiones for
Ejercicio
Evaluacion perezosa
Maps
Programación funcional
2026 I
2026 I
Cursos
AyG PUJ
AyG PUJ
Sokoban (Tipo 1: Pregunta 2 / Tipo 2: Pregunta 3).
Arboles y grafos PUJ Cali
Solución — Primer Parcial Árboles y Grafos 2026-1
Codigos
C1
C1
Repaso
C10
C10
Busquedas
Como vamos
Grafo complementario
Grafos bipartito
Representaciones de grafos dirigidos
Representaciones de grafos no dirigidos
C11
C11
Búsqueda por Amplitud (BFS)
Como vas
Búsqueda por Profundidad (DFS)
Grafo implícito
Resumen de Conceptos de Búsqueda en Grafos
C12
C12
Punto 1 - Dividir y Conquistar [13 pts.]
Punto 2 - Grafos Bipartitos [15 pts.]
Solucion examen
C13
C13
Como vamos
Definiciones
Idea
C14
C14
Idea
Conectividad en grafos
C15
C15
Como vamos
Conectividad II - Revisión y Ampliación
Orden Topológico - Revisión y Ampliación
C16
C16
Algoritmos para detección de SCC
Como vamos
Componentes fuertemente conexos (SCC)
C17
C17
Algoritmo de Tarjan
Temas
Problema de puentes y articulaciones
C18
C18
Algoritmo de Tarjan para puentes y puntos de articulación
Algoritmo de Pila de Aristas
Como vamos
Componentes biconexas
Resumen
C19
C19
Temas
Grafo ponderado
Relajación
C2
C2
Explicación tarea 1
C20
C20
Problematica
Codigo fuente
Correctitud y complejidad del algoritmo de Bellman-Ford
Descripción del algoritmo de Bellman-Ford
C21
C21
Algoritmo Dijkstra
Temas
Correctitud del algoritmo de Dijkstra
Grafos con estado I
Implementación de Dijkstra
C22
C22
Algoritmo de Floyd‑Warshall
Como vamos
Correcitud de Floyd Warshall
Implementacion en Python
C23
C23
Motivacion
Representaciones
Definiciones
Especificación recursiva de árboles
Propiedades y representación de árboles
C24
C24
Medidas en los grafos
Codigos
C25
C25
Enfoque de divide y vencerás
Centro
C26
C26
Expectativas
C27
C27
Árboles de Segmentos
Update
C28
C28
Árboles de Fenwick (Fenwick Tree / Binary Indexed Tree)
C29
C29
Clase 29 Union Find
C3
C3
Objetivos
Invariantes de ciclo
Notación asintótica
C30
C30
Árboles de cobertura mínima
Contenido
Implementacion Kruskal
Implementacion Prim
C31
C31
Soluciones
Codigos lazy propagation
Problema UVA 11235
C32
C32
Evaluación perezosa
C4
C4
Objetivos
Diapositivas
C5
C5
Divide y vencerás I
C6
C6
Objetivos
C7
C7
Objetivos
Divide y vencerás
Invariantes de ciclos
Resumen
C8
C8
Algoritmo de la bisección continuo
Algoritmo de la bisección
Análisis de complejidad de la bisección
Objetivo
Resumen de clase: Algoritmo de la bisección
C9
C9
Como vamos
Familias de Grafos
Introducción a los Grafos
Resumen de Conceptos de Teoría de Grafos
Teorema de Handshaking (Apretón de Manos)
CyE II ICESI
CyE II ICESI
Recursos
C1
C1
Relaciones
Objetivos
C10
C10
Clase 10. Solucion seguimiento e induccion
Ejercicio 2: Inducción
Inducción matemática
Solución del seguimiento
C11
C11
Como vamos
Definición recursiva de datos
Inducción estructural
C12
C12
Como vamos
Divide y vencerás
Reconocimiento de patrones
C13
C13
Temas
Mergesort
Método del Maestro
Quicksort
C14
C14
Conceptos base
Método del árbol de recursión para resolver ecuaciones de recurrencia
Método de iteración para resolver ecuaciones de recurrencia
Resumen de Conceptos: Métodos de Solución de Relaciones de Recurrencia
C15
C15
Como vamos
Currying
Funciones de orden superior
Resumen de Conceptos: Funciones de Orden Superior y Currying
C16
C16
Clase 16. Ejemplo del Método del Árbol de Recurrencia
C17
C17
Motivación
Introducción a la teoría de números
Numeros primos
Teoremas sobre primos
C18
C18
Funciones de alto orden: map, filter y reduce
Map y filter
Reduce y Fold
C19
C19
Aritmetica modular
Como vamos
División entera
C2
C2
Objetivos
Introduccion a scala
C20
C20
Módulo en Scala
C21
C21
TADs y Congruencias Lineales
C22
C22
Clase 22 Ecuaciones de congruencia
C23
C23
Temas
Colecciones
Expresiones for
Teorema del residuo chino
C3
C3
Clase relaciones n arias
Proyección
Relaciones n arias
Relaciones
Resumen
C4
C4
Objetivos
Enfoque en Java (Imperativo)
Versión imperativa
Programación imperativa vs funcional
C5
C5
Objetivos
Recursión en código
Geometrica
Resumen de Recursión
C7
C7
Clase 6. Evaluación de expresiones y recursión estructural
Evaluación de expresiones
Recursión estructural
Resumen de Conceptos - Clase 6
C8
C8
Como vamos
Recursión de árbol
Recursión de cola
Recursión lineal
Resumen de Conceptos de Recursión
C9
C9
Como vamos
Inducción matematica
FLP
FLP
G50
G50
Materiales
Solución Segundo Parcial — Fundamentos de Lenguajes de Programación 2026-I
Solución Primer Parcial — Fundamentos de Lenguajes de Programación 2026-I
C1
C1
Introducción al curso y repaso
Problema
Conceptos
Conceptos de programación funcional
C10
C10
¿Que es?
TAD de tipo
C11
C11
Ejemplo de objetos
Ejercicio en clase
C2
C2
Alcance de Variables
Objetivos
Ocurrencia Libre en Cálculo Lambda
Representación Inductiva
Representación Recursiva de Programas
Representación mediante Gramática BNF
Resumen: Representación de Datos y Lenguajes en EOPL
C3
C3
Abstracción de datos
Donde vamos
Ejemplo Cálculo Lambda
Ejemplo TAD: Árboles con Hojas Mixtas
Estrategia para la construcción de TAD
C4
C4
Árbol de Sintaxis Abstracta (AST)
Como vamos
Define-datatype en EOPL
Ejercicio: Árbol de Sintaxis Abstracta (AST) para árboles binarios
Ejercicio datatypes
Resumen de Conceptos: Define-datatype y Árboles de Sintaxis Abstracta (AST)
C5
C5
Clase 5: Semántica de lenguajes de programación
Intérprete Simple
Cómo es el proceso de interpretación o compilación
Resumen de Conceptos de la Clase
Scanner, Parser e Intérprete
C6
C6
Como vamos
Condicionales
Ejercicio ligaduras
Ejericicio 2 Ligaduras y condicionales
Ligaduras
Procedimientos
C7
C7
Cambios en la gramática
Clase 7. Procedimientos recursivos
Ejemplo de evaluación con letrec
Ejercicio de evaluación de expresiones en Scheme con ambientes
C8
C8
Asignación y Referencias en Lenguajes de Programación
Como vamos
Ejemplo de Paso por Referencia
Paradigmas
Paso por referencia
C9
C9
Clase 9: Lenguajes tipados
Consulta de tipos
G51
G51
Contenido
Solución Segundo Parcial — Fundamentos de Lenguajes de Programación 2026-I
Solución Primer Parcial — Fundamentos de Lenguajes de Programación 2026-I
C1
C1
Temas
Enunciado
Introducción a Racket
Repaso PF
C10
C10
¿Qué es inferencia de tipos?
Ejemplos
C11
C11
Clase 11 Objetos
Ejemplos
C2
C2
Alcance de Variables
Objetivos
Especificación Recursiva de Programas
Ligaduras
Representación Inductiva
Representación mediante BNF
Resumen de Conceptos: Especificación y Ligadura de Datos en Lenguajes de Programación
C3
C3
Introducción
Como vamos
Ejemplo Expresión Cálculo Lambda
Ejemplo ambientes
Ejemplo tuplas
Resumen de Conceptos de Abstracción de Datos
C4
C4
Como vamos
Definición de Tipos de Datos Abstractos (TADs) en Scheme
Ejemplo: Implementación de Ambientes (Environments)
Ejercicio: Parser y Unparser para Mapas y Valores
Ejercicio: Definición de Árboles con Variantes Mixtas
Resumen de Conceptos de la Clase
Sintaxis Abstracta y Concreta
C5
C5
Como vamos
Especificación Léxica y Gramatical
Interpretación y compilación
Intérprete Simple
Scanner y Parser
Resumen de Conceptos de Interpretación y Compilación
C6
C6
Como vamos
Condicionales
Ejemplo
Ejercicio condicionales y ligaduras
Ligaduras locales
Definiciones
C7
C7
Clase 7 Procedimientos recursivos
Ejemplo de evaluación con letrec
Ejercicio
Implementación de letrec
C8
C8
Asignación
Como vamos
Ejemplo paso por referencia
Paradigmas
Paso por referencia
C9
C9
Contenido
Ejercicio
Interprete de chequeo
Pruebas sobre el intérprete
Infra
Infra
Recursos
Solución - Primer Examen Parcial
Solución - Segundo Examen Parcial
C1
C1
Conceptos de redes
C10
C10
Clase 10 Docker compose y Docker Swarm
Docker Swarm
Docker Compose
C2
C2
Objetivos
Dependencias en sistemas paralelos
Introducción a la paralelización
Limitaciones en el crecimiento del rendimiento de procesadores
Recursos compartidos en sistemas paralelos
Resumen integral: Limitaciones fundamentales en sistemas paralelos y paralelización
C3
C3
Como vamos
Ejercicio TBB
Ejercicio Thread
Notas de compilación
Resumen de Conceptos de Programación Paralela
Usando Thread
C4
C4
Ambientes en python
Como vamos.
Perfilado determinístico
Perfilador estadístico
Profiler de tiempo: time y timeit
Profiler
Resumen
C5
C5
Temas
Conclusiones de profiling
Instrucciones AVX
Multiprocessing
Resumen
Threading en Python
C6
C6
Como vamos
OpenMP
Queue y Pipe en Multiprocessing Python
Secuencial
C7
C7
Como vamos
Perf
Top y HTOP
Resumen
Valgrind
C8
C8
Arquitecturas
Clase 8. Introduccion a sistemas distribuidos
Introducción a sistemas distribuidos
Pipelines CI/CD
C9
C9
requirements.txt
Comandos importantes de Docker
Estructura Dockerfile
PFC
PFC
G50
G50
Recursos
Solucion parcial G50
C1
C1
Introducción
Temas
Repaso
Resumen
C10
C10
Condición de carrera
Motivación
Que es paralelismo
Estrategia de paralelización
C11
C11
Sobre la complejidad de programas paralelos
Ejemplo scalemeter
Scalameter
C12
C12
Clase 12 Paralelizacion de tareas
C13
C13
Clase 13: Colecciones Paralelas
C2
C2
Alcance léxico
Objetivos
Condicionales, booleanos, definiciones
Evaluación de expresiones
Listas
Resumen integral: Conceptos fundamentales de programación funcional en Scala
C3
C3
Como vamos
Ejemplo de recursion lineal y de cola
Recursión
Recursión de arbol
Resumen de Conceptos de Recursión
C4
C4
Como vamos
Currificación
Ejercicio de funciones de alto orden y anónimas
Funciones de alto orden
Resumen
C5
C5
Abstracción de datos II
Abstracción de datos I
Temas
Modelo de sustitución
Notación infija
Resumen de Conceptos de Abstracción de Datos en Scala
C6
C6
Como vamos
Herencia y clases abstractas
Listas
C7
C7
Como vamos
Map y Filter
Reduce y Fold
Resumen
Tuplas
C8
C8
Limitaciones listas
Listas
Expresiones for
Operaciones sobre colecciones
Set
C9
C9
Como vamos
Evaluación perezosa
Generalización de las expresiones For
Maps
G51
G51
Recursos
Solución - Segundo Examen Parcial
C1
C1
Introduccion a Scala
Temas
Programación orientada a objetos
Resumen de conceptos de programación funcional y Scala
C10
C10
Condición de carrera
Motivación
Paralelismo
Estrategia de paralelización
C11
C11
Benchmarking
Conceptos
Ejemplo Benchmarking
C12
C12
Clase 12: Paralelismo de tareas
Scan
C2
C2
Alcance léxico
Objetivos
Expresiones
Expresiones y operaciones
Listas
Mecanismos de evaluación
Resumen de Conceptos de Programación Funcional en Scala
C3
C3
Como vamos
Recursión de árbol
Recursión de cola
Recursión estructural
Recursión lineal
Resumen de Conceptos de Recursión
C4
C4
Como vamos
Funciones que retornan funciones
Ejercicio de funciones de orden superior
Funciones de orden superior
Resumen de Conceptos de Programación Funcional
C5
C5
Abstracción
Temas
Encapsulación y modelo de sustitución
Notación infija
Resumen
C6
C6
Como vamos
Herencia
Reconocimiento de patrones en clases
Reconocimiento de patrones sobre listas
Herencia
C7
C7
Temas
Map y Filter en Scala
Reduce y Fold en Scala
Resumen de Conceptos de Programación Funcional en Scala
Tuplas en Scala
C8
C8
Limitacion de las listas
Colecciones en Scala
Expresiones For
Flatmap
C9
C9
Como vamos
Evaluación perezosa
Expresiones for extendido
Map
2026 II
2026 II
2026-II
AyG PUJ
AyG PUJ
Árboles y Grafos
C1
C1
Clase 1. Repaso de estructuras de datos y notación asintótica
C2
C2
Clase 2. Invariantes de ciclo y divide y vencerás
Divide y vencerás
Ejercicios interactivos
Invariantes de ciclo
Estructuras de Datos
Estructuras de Datos
Estructuras de Datos
C1
C1
Clase 1. Repaso de programación básica
C2
C2
Clase 2. Lenguajes de programación y paradigmas
C3
C3
Clase 3. Introducción a la complejidad computacional
C4
C4
Clase 4. Ciclos dependientes y sumatorias
Ejercicios interactivos
C5
C5
Clase 5. Ejercicios de análisis de complejidad
Ejercicios interactivos
FLP
FLP
Fundamentos de Interpretación y Compilación de Lenguajes de Programación
Infra
Infra
Infraestructuras Paralelas y Distribuidas
PFC
PFC
Fundamentos de Programación Funcional y Concurrente
Contenido
Paradigmas de programacion
Volver al principio