Los algoritmos y las estructuras de datos son algo fundamental en el día a día de un desarrollador. Pero también son muy importantes a la hora de pasar entrevistas técnicas con muchas empresas. Si eres un estudiante o un profesional interesado en mejorar tus conocimientos en esa faceta o quieres mejorar en entrevistas técnicas, ¡este curso es perfecto para ti!
En la parte técnica de este curso veremos las estructuras de datos y algoritmos más importantes, tanto de forma teórica como práctica. Se tratarán más de 50 ejercicios prácticos de programación reales, utilizados en las entrevistas de empresas tan importantes como Google, Amazon, Meta, Microsoft, Netflix y muchas más.
Análisis de la Complejidad Algorítmica (Big O). Empezaremos la parte técnica del curso viendo el análisis de la complejidad algorítmica, expresado en Big O. Esto será muy importante para poder optimizar nuestro código al máximo.
Arrays, String y Tablas Hash. A continuación pasaremos a las estructuras de datos más comunes, como arrays o conjuntos de datos y las Tablas Hash.
Listas Enlazadas. La segunda estructura de datos que veremos son las Listas Enlazadas (Linked Lists). Esta consiste en una secuencia de nodos que contienen un valor y una referencia al siguiente elemento de la lista.
Pilas y Colas. Continuaremos con las Pilas (Stacks) y las Colas (Queues). Como veremos, las Pilas son una estructura de tipo LIFO (Last In First Out) y las Colas de tipo FIFO (First In First Out).
Árboles y Grafos. Las siguientes estructuras de datos que veremos son los Árboles y los Grafos. Veremos los distintos típos (binary tree, binary search tree, árbol completo, grafo dirigido / no dirigido, grafo conexo / no conexo) y sus recorridos.
Montículos. También se tratarán los montículos (Heaps), estructura muy utilizada cuando se necesita mantener nuestros elementos en orden.
Tries. La última estructura de datos que veremos será el Trie o árbol de prefijo, muy utilizado por los buscadores que soportan la funcionalidad de autocompletado.
Recursividad y Programación Dinámica. También veremos ejercicios que traten sobre recursividad, viendo además una técnica de optimización llamada programación dinámica.
Algoritmos de Ordenamiento y Búsqueda. Se tratarán los algoritmos de ordenamiento y búsqueda más relevantes (bubble sort u ordenamiento de burbuja, selection sort u ordenamiento por selección, merge sort, quick sort y binary search o búsqueda binaria etc.).
Manipulación de Bits. Para finalizar la parte técnica del curso veremos un tipo de ejercicios de manipulación de bits de números binarios.
Como he comentado, cada uno de los conceptos técnicos tendrá parte teórica y parte práctica, con más de 50 ejercicios prácticos en el curso, que te harán mejorar la lógica de programación.
Para finalizar, veremos una serie de temas que te ayudarán en tus entrevistas y a aumentar las posibilidades de obtener un mejor trabajo.
Entrevistas conductuales (behavioral interviews). Entrevistas típicas que tenemos en todas las empresas, en las que conversas sobre tu experiencia pasada, en cómo hiciste ciertas cosas o como solventaste ciertos problemas, etc. Veremos cómo afrontarlas para aumentar las posibilidades de que te contraten.
Curriculum Vitae (CV) óptimo. Un buen CV es fundamental para que las empresas se fijen en ti. Veremos un ejemplo mío de hace unos años, que no era para nada óptimo, y otro ejemplo muy mejorado. También tendrás acceso a la plantilla de forma gratuita.
Portfolio y LinkedIn. Veremos de forma resumida cuándo y cómo debes crear un Portfolio y te daré unos consejos para que puedas optimizar tu LinkedIn.
Aplicando a ofertas. Aprenderás diversas estrategias de cómo aplicar a las ofertas de las empresas que te interesen, aumentando las posibilidades de éxito.
El primer paso ya lo has dado. ¡Te animo a unirte a este curso para mejorar como programador!
1684
69
TAKE THIS COURSE