|Componentes Fuertemente Conexos (Tarjan)Master
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 20:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Componentes Fuertemente Conexos (Tarjan)

Master100 pts·Algoritmos

Enunciado

Componentes Fuertemente Conexos (Tarjan)

Dado un grafo dirigido representado como una lista de adyacencia, encuentra todos los Componentes Fuertemente Conexos (SCC) usando el algoritmo de Tarjan.

Un componente fuertemente conexo es un subconjunto maximal de nodos tal que existe un camino dirigido de cada nodo a todos los demás nodos del subconjunto.

Representación del grafo

El grafo se pasa como un diccionario donde las claves son los nodos (enteros) y los valores son listas de nodos vecinos.

# Grafo con 5 nodos: 0→1, 1→2, 2→0, 1→3, 3→4
graph = {
    0: [1],
    1: [2, 3],
    2: [0],
    3: [4],
    4: []
}

find_sccs(graph)
# → [[0, 1, 2], [3], [4]]

Reglas de salida

  • Cada SCC es una lista de nodos ordenada de menor a mayor.
  • Los SCCs en el resultado final están ordenados por su elemento mínimo de menor a mayor.

Complejidad esperada

  • Tiempo: O(V + E)
  • Espacio: O(V)

Casos especiales

  • Grafo vacío → []
  • Nodo sin aristas → SCC de un solo elemento
  • Grafo completamente conexo → un solo SCC con todos los nodos
Restriccionesexpand_more
  • Dificultad: Master
  • Completa todos los test cases para obtener los 100 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar print() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar
Componentes Fuertemente Conexos (Tarjan) — Master | Coding Challenges · Coding Challenges