Se puede seguir un lenguaje de programación como C / C ++ / Java. Se debe usar el mismo idioma
para el laboratorio
Grupo I
- ¿Dónde puedo encontrar una biblioteca de estructura de datos de gráficos dirigida, implementada en Javascript?
- ¿Cuáles son algunas optimizaciones comunes que los clientes de GPS como Google Maps usan además de los algoritmos elementales de ruta más corta como la búsqueda A *?
- En la programación de computadoras, ¿es cierto que una recursión funcionará mejor para encontrar todas las rutas posibles que los bucles anidados?
- Cómo contar el número de enteros palindrómicos dentro de un rango [A, B] donde A y B pueden ser de hasta 10 ^ 17
- ¿Apache Hadoop es realmente bueno para algoritmos recursivos?
Fundamentos de programación: declaraciones condicionales, declaraciones de control, funciones, ar-
rayos, preprocesador, punteros, variación en declaraciones de puntero, punteros de función, función con
Numero variable de argumentos
Funciones avanzadas de programación: estructuras y uniones, conceptos de manejo de archivos, lectura de archivos,
escribir, binario y Stdio, manipulaciones de archivos
Conceptos de programación orientada a objetos: características de programación, abstracción de datos, En-
capsulación, clase, constructores de objetos, polimorfismo, herencia, miembros estáticos, constante
miembros, funciones miembro, sobrecarga y anulación, funciones virtuales, referencias, papel de
este puntero, clases de almacenamiento, funcionan como argumentos, manejo de cadenas, asignación de memoria dinámica
ción, clases anidadas.
Características avanzadas: clase abstracta, manejo de excepciones, bibliotecas estándar, programa genérico
ming, plantillas, plantilla de clase, plantilla de función, STL, contenedores, iteradores, adaptadores de función,
asignadores, parametrización de la clase, conceptos de manejo de archivos.
Grupo II
Lista de estructuras de datos lineales: Tipos de datos abstractos (ADT), Lista de ADT, implementos basados en matrices
implementación de listas vinculadas, listas individuales, dobles y circulares, aplicaciones de
listas, manipulación polinómica, diferentes operaciones en listas
Estructuras de datos lineales Pilas, Colas: Pila ADT, Evaluación de expresiones aritméticas,
otras aplicaciones, cola ADT, implementación de cola circular, colas de doble extremo, aplicación-
iones de colas
Estructuras de datos no lineales avanzadas: árboles AVL, árboles B, árboles rojo-negros, árboles Splay,
0.2 Programa de materias básicas 5
Montones binomiales, montones de Fibonacci, conjuntos disjuntos, análisis amortizado, método de contabilidad, po-
método tential, análisis agregado.
Gráficos: Representación de gráficos, BFS, DFS, clasificación topológica, árboles de expansión mínima,
Kruskal y algoritmo Prim, algoritmo de ruta más corta, algoritmo Dijkstras, algoritmo Bellman-Ford
Ritmo, Floyd, algoritmo Warshall.
Técnicas de clasificación, búsqueda y hash: diferentes algoritmos de clasificación y búsqueda y
su análisis de rendimiento, funciones de hash, encadenamiento separado, direccionamiento abierto, rehashing,
Hash extensible