🛣️

Cargá un grafo con "✏️ Editar grafo" para empezar.

{{ graphError }}
🧮 Matriz de adyacencia
C {{ n.label }}
{{ r.label }} {{ weights[r.label + '|' + c.label] ?? '∞' }}
📏 Distancias y predecesores
{{ n.label }}
D {{ fmt(currentStep.dist[n.label]) }}
P {{ currentStep.pred[n.label] ?? '-' }}
📥 Cola de prioridad
nodocosto
(vacía)
{{ e.node }} {{ e.prio }} mín
📋 Seguimiento por iteración

La primera fila aparece cuando se extrae el nodo inicial de la cola.

Iteración S V − S w D[{{ n.label }}]/P[{{ n.label }}]
{{ row.label }} {{ fmtSet(row.S) }} {{ fmtSet(row.VS) }} {{ row.w }} {{ fmt(row.d[n.label]) }}/{{ row.p[n.label] ?? '-' }}
💻 Pseudocódigo
{{ line }}
🔍 Explicación

Cargá un grafo y presioná ▶️ o "Paso siguiente" para empezar.

{{ currentStep.badge.icon }} {{ currentStep.badge.text }}

Paso {{ currentStepIndex + 1 }} de {{ steps.length }}

📌 {{ pinnedInfo ? `Nodo ${pinned}` : 'Nodo fijado' }}
  • {{ line }}
Hacé clic en un nodo del grafo para seguir su estado paso a paso.
⏱️ Complejidad:
{{ h }}
{{ r[0] }}

Leyenda
  •    No alcanzado (distancia ∞)
  •    Con distancia tentativa (V − S) / valor que cambió en la iteración
  •    v actual (extraído de la cola) / iteración en curso
  •    w: sucesor que se está evaluando
  •    En S: distancia mínima definitiva
  •    Arista del árbol de predecesores