Saltar al contenido

Diseño de programas informáticos

Comprender cómo abordar los problemas de programación e idear una solución es una habilidad esencial para cualquier desarrollador de Python. En este curso, aprenderá nuevos conceptos, patrones y métodos que ampliarán sus habilidades de codificación del experto en programación, Peter Norvig.

¿Por qué realizar este curso?

¡Avanza por el camino para convertirte en un programador experto! En esta clase practicarás cómo pasar de la descripción de un problema a la solución, utilizando una serie de tareas. Durante los segmentos de horario de oficina, Peter también compartirá sus propios consejos y trucos personales para abordar problemas de programación, ¡y sus técnicas pueden sorprenderlo!

Programa de estudios

Lección 1: Manos de póquer ganadoras

Pasos del proceso de diseño; Desarrollar para claridad y generalidad;
Argumentos a favor de la corrección del programa; Experimentación y simulación .;
Diseño de compensaciones; Sencillez y claridad. Descomposición y composibilidad.

Lección 2: Reverso del sobre

Cálculos del reverso del sobre; Cuándo usar la fuerza bruta y cuándo ser
inteligente; El rompecabezas de Zebra; Expresiones generadoras; Permutaciones y
combinaciones. Criptaritmética; Pensamiento recursivo y deseoso; El
algoritmo de subcadena palíndromo más largo .

Lección 3: Expresiones regulares, otros idiomas e intérpretes

Definición del lenguaje de expresiones regulares; Interpretación del idioma;
Definir el conjunto de cadenas que coinciden con una expresión regular;

Otros idiomas.

Lección 4: Abordar la complejidad mediante la búsqueda

Búsqueda: encontrar el camino con una linterna o un barco; echando agua.
Analizar la eficiencia de un algoritmo; Relaciones de recurrencia; Coincidencia
de tipos de datos con algoritmos.

Lección 5: Manejo de la incertidumbre a través de la probabilidad

Probabilidad: el juego del cerdo; Maximizar la utilidad esperada para optimizar la estrategia.

Lección 6: Juegos de palabras

Manejo de la complejidad; Grandes conjuntos de palabras; Estructuras de datos apropiadas; Juegos de palabras.

Lección 7: Conclusión

Entrevistas y examen de práctica

 

Mas Informacion: [email protected]