Algorithm: Bellman-Ford
Input: A weighted, directed graph G = (V, E, w); a source vertex s.
Output: A shortest-paths spanning tree T rooted at s.
for each vertex v ∈ V do
δ[v] ← ∞
π[v] ←NIL
δ[s] ← 0
for i ← 1 to n − 1 do
for each (u, v) ∈ E do
if δ[v] > δ[u] + w(u, v) then δ[v] ← δ[u] + w(u, v) π[v] ← u
for each (u, v) ∈ E do
if δ[v] > δ[u] + w(u, v) then
Output “A negative cycle exists.”
Exit
T ← ∅
for v ∈ V − s do
T ← T ∪ {(π[v], v)}
Algorithm: Bellman-FordInput: A weighted, directed graph G = (V, E, w); a source vertex s.Output: A shortest-paths spanning tree T rooted at s.for each vertex v ∈ V doδ[v] ← ∞π[v] ←NILδ[s] ← 0for i ← 1 to n − 1 dofor each (u, v) ∈ E doif δ[v] > δ[u] + w(u, v) then δ[v] ← δ[u] + w(u, v) π[v] ← ufor each (u, v) ∈ E doif δ[v] > δ[u] + w(u, v) thenOutput “A negative cycle exists.”ExitT ← ∅for v ∈ V − s doT ← T ∪ {(π[v], v)}
การแปล กรุณารอสักครู่..

แบบพนักงานฟอร์ด
ใส่ : ถ่วงน้ำหนัก กำกับกราฟ G = ( V , E , W ) ; แหล่ง VERTEX S .
ผลผลิต : เส้นทางสั้นที่สุดต้นไม้ทอดข้ามที่ S .
t รากสำหรับแต่ละจุดยอด v ∈ V ทำ
δ [ V ] ←∞
π [ V ] ←นิล
δ [ s สำหรับผม← ] ← 0
1 n − 1
( u , v ) แต่ละ∈ E ทำ
ถ้าδ [ V ] > δ [ u ] w ( u , v ) แล้วδ [ V ] ←δ [ u ] w ( u , v ) π [ V ] ←
U สำหรับแต่ละ ( u , v ) E ∈ทำ
ถ้าδ [ V ] > δ [ u ] w ( u , v
) แล้วผลผลิต " วงจรเชิงลบอยู่ ออก
" t ←∅
สำหรับ V ∈ V − s ทำ
T T ∪← { ( π [ V ] , V ) }
การแปล กรุณารอสักครู่..
