1 – Programación dinámica : la mayoría de los SRM del codificador superior consisten en al menos un problema DP. Es difícil de pensar y fácil de implementar.
2 – Arreglos de sufijos: puede leer acerca de los arreglos de sufijos aquí Suffix Array | Set 1 (Introducción) – GeeksforGeeks
3 – Primera búsqueda en profundidad: se utiliza para realizar una búsqueda en un árbol o en un gráfico.
- ¿Cuál es la diferencia entre arquitectura de software y desarrollo de software?
- ¿Cómo se organizan las bases de código en GitHub?
- ¿Cómo tratan los programadores profesionales con colegas ignorantes / no calificados, a quienes no les importa mejorar?
- ¿Qué lenguajes de programación predices que liderarán el Internet de las cosas?
- ¿Cuáles son las ideas del desarrollo de software personalizado?
4 – Aprende a usar Stack, Queue y Vector
5 – Algoritmo de Dijkstra: se utiliza para encontrar los costos de las rutas más cortas desde un único vértice a un único vértice de destino deteniendo el algoritmo una vez que se ha determinado la ruta más corta al vértice de destino. Debe usarse solo para pesos de borde + ve.
6 – Floyd – Warshall: se utiliza para encontrar caminos más cortos en un gráfico ponderado con pesos de borde positivo o negativo.
7 – Algoritmo MinMax: Minimax
8 – Árboles de segmentos: Tutoriales de algoritmos
9 – Búsqueda binaria: es imprescindible conocer este algoritmo. Se utiliza para buscar un elemento en una matriz / árbol ordenado en el tiempo log (n).
10 – Divide y conquista: algoritmos de división y conquista
Asegúrese de saber Ordenar en n * log (n). Sea bueno en matemáticas Math