¿Cuáles son los algoritmos gráficos ‘imprescindibles’ para un programador competitivo?

Aquí hay algunos fuera de mi cabeza:

  • DFS / BFS
  • Algoritmos de ruta más corta (algoritmo de Dijkstra, algoritmo de Floyd, Bellman – Ford, algoritmo de Johnson)
  • MST (algoritmo de Prim, algoritmo de Kruskal; no necesariamente necesita saber ambos)
  • Un algoritmo de flujo máximo (algoritmo Edmonds-Karp, o un método de flujo previo; este último tiende a ser más rápido en el peor de los casos; para ICPC querrá el algoritmo de Dinić en su libro de códigos, ya que aún es más rápido) y la aplicación reducirá al mínimo y coincidencia bipartita, y, a través del teorema de König, para cubrir el vértice mínimo en un gráfico bipartito
  • Un algoritmo de flujo mínimo de costo mínimo
  • Camino euleriano (algoritmo de Hierholzer)
  • Un algoritmo de componentes fuertemente conectados
  • Tipo topológico
  • Los algoritmos de Tarjan para encontrar puentes y puntos de articulación
  • La descomposición de luz pesada para los árboles.

He respondido una pregunta similar antes. Por favor encuentre el siguiente enlace: –

La respuesta de Mitesh Pathak a ¿Hay una lista de algoritmos que debes conocer como programador?

ALGORITMOS GRÁFICOS]

  1. DFS
  2. BFS
  3. Algoritmo de Dijkstra
  4. Algoritmo de Floyd-Warshall
  5. Algoritmo de corte mínimo / máximo / flujo
  6. Tipo topológico
  7. A * algoritmo
  8. Componentes fuertemente conectados
  9. Árboles HLD

Gracias por A2A.

Hola usuario anónimo. Noté que eliminó la redirección de esta pregunta a ¿Cuáles son los algoritmos más importantes para la programación competitiva? Pensé que esa pregunta tenía una buena respuesta, pero tal vez algunas de estas otras preguntas satisfagan sus necesidades. De lo contrario, tal vez pueda aclarar lo que falta en las respuestas existentes sobre este tema.

  • ¿Cuáles son algunos algoritmos básicos para la programación competitiva?
  • ¿Qué estructuras de datos y algoritmos básicos se deben aprender antes de comenzar la programación competitiva?
  • ¿Cuáles son los algoritmos necesarios para resolver todos los problemas (usando C ++) en cualquier concurso de codificación competitivo?
  • ¿Cuáles son los algoritmos gráficos “imprescindibles” para un programador competitivo?

Aquí hay una compilación de todos los algoritmos y estructuras de datos utilizados en la programación competitiva.

Fue una iniciativa tomada por un miembro de la comunidad codechef y también contribuida por algunos otros, lo que podría ser útil.

Aquí hay un enlace: Estructuras de datos y algoritmos

Espero que esto sea suficiente.
Happy Coding 🙂

Los algoritmos básicos son los algoritmos de recorrido primero en profundidad y primero. Además, con respecto a los gráficos, es importante que conozca tanto la representación vectorial / matricial de los gráficos como la representación de un registro o nodo y vea cómo son realmente equivalentes entre sí.

Para mi punto de vista, esta es la mejor respuesta a esta pregunta: estructuras de datos y algoritmos