¿Este repo te fué útil? Dale una ⭐
Si encontrás algún error o querés colaborar con el proyecto, hacé un
pull request!
Estructura de Datos y Algoritmos es una materia fundamental en la formación de cualquier estudiante de ingeniería. Su objetivo principal es enseñar cómo organizar, manipular y procesar datos de manera eficiente mediante estructuras como listas, pilas, colas, árboles y grafos, junto con algoritmos que permiten resolver problemas de forma óptima en tiempo y espacio.
Usamos EDA porque nos permiten resolver problemas de forma eficiente. Una buena elección de estructura o algoritmo puede hacer que un programa sea mucho más rápido, consuma menos memoria y sea más fácil de mantener. Sin EDA, el código se vuelve ineficiente, desorganizado y difícil de escalar.
Se usan como herramientas básicas al escribir programas. Por ejemplo:
- Usamos pilas y colas para manejar tareas en orden.
- Usamos listas, arreglos y mapas para almacenar y acceder a datos rápidamente.
- Usamos árboles y grafos para representar jerarquías o relaciones complejas.
- Usamos algoritmos como búsqueda, ordenamiento o recorrido para manipular esos datos de forma eficiente.
En programación real, cada estructura o algoritmo tiene casos ideales de uso, y parte del aprendizaje es saber cuándo conviene usar cada uno.
| # | Título | Teoría | Dificultad |
|---|---|---|---|
| 1 | Ordenar matriz antidiagonal | 🟡 Intermedio | |
| 2 | Ordenar fechas cronológicamente | 🟡 Intermedio |
| # | Título | Teoría | Dificultad |
|---|---|---|---|
| 1 | Intercambiar dos variables sin usar una variable auxiliar | Wiki | 🟢 Fácil |
| 2 | Mostrar en pantalla solo el dígito más a la derecha de la suma de dos números | Wiki | 🟢 Fácil |
| 3 | Hallar el perímetro y el área de un triángulo dados sus lados | Wiki | 🟡 Intermedio |
| # | Título | Teoría | Dificultad |
|---|---|---|---|
| 4 | Imprimir triángulos en consola con asteriscos | 🟢 Fácil | |
| 5 | Juego del número secreto | 🟡 Intermedio | |
| 6 | Cargar y validar horarios | 🟡 Intermedio | |
| 7 | Convertir temperatura de Fahrenheit a Celsius | 🟢 Fácil | |
| 8 | Circunferencia y el área de un círculo dado su radio | 🟢 Fácil | |
| 9 | Producto de dos números ingresados como chars | 🟢 Fácil | |
| 10 | Promedio de 5 números ingresados | 🟢 Fácil | |
| 11 | Dígito central de un número de 5 cifras | 🟢 Fácil | |
| 12 | Mayúscula de cualquier letra | 🟢 Fácil | |
| 13 | Raíces de una ecuación de segundo grado | 🟡 Intermedio |
| # | Título | Teoría | Dificultad |
|---|---|---|---|
| 14 | Ordenar elementos únicos de una lista de forma ascendente | 🟡 Intermedio |
-
Cloná el repositorio en tu máquina local:
git clone https://github.com/davidgimenezs/estructuras-de-datos-y-algoritmos.git
-
Navegá a la carpeta del repositorio:
cd estructuras-de-datos-y-algoritmos -
Compilá y ejecutá cualquier archivo C:
gcc "Semana 1/intercambiar-variable.c" -o intercambiar-variable ./intercambiar-variable -
Podés compilar en Windows con MinGW o usar un IDE como Code::Blocks, Dev-C++, o Visual Studio, personalmente yo prefiero usar Embarcadero Dev-C++.
Si tenés dudas o sugerencias, podés contactarme a través de GitHub o en mis redes sociales.
Este proyecto está bajo la licencia MIT - podés ver más detalles en el archivo LICENSE.
