小编Abb*_*bby的帖子

Dijkstra在C++中的算法

我需要使用邻接矩阵表示通过ADT图实现Dijkstra算法,通过使用C/C++语言增强下面的伪代码来找到最短路径.

procedure Dijkstra(G, w, r, Parent[0:n-1], Dist)
  for v? 0 to n-1 do
    Dist[v] ? ?
    InTheTree[v] ? .false.
  endfor
  Parent[r] ?-1
  Dist[r] ?0
  for Stage ?1 to n-1 do 
    Select vertex u that minimises Dist[u] over all u such that InTheTree[u] = .false. 
    InTheTree[u] = .true.                                       // add u to T
    for each vertex v such that uv ? E do             // update Dist[v] and 
      if .not. InTheTree[v]  then                // Parent[v] arrays
        if Dist[u] + w(uv) < Dist[v]
          Dist[v] …
Run Code Online (Sandbox Code Playgroud)

c c++ dijkstra

9
推荐指数
2
解决办法
1252
查看次数

标签 统计

c ×1

c++ ×1

dijkstra ×1