Dijkstra的算法带有2d阵列

ogw*_*ard 5 c++ dijkstra multidimensional-array

在过去的几天里,我试图实现这个算法.到目前为止,我已经设法制作动态二维数组并插入节点之间的距离,一个删除节点之间路径的函数和一个告诉我两个节点之间是否存在路径的函数.现在我想实现一个函数,它返回从节点A到节点B的最短路径.我知道dijkstras算法是如何工作的,我已经在wiki上读取了伪代码而不能自己编写任何代码.我真的被困在这里了.

我一直在考虑代码应该是什么样子以及应该发生什么,这就是为什么我已经创建了这个函数,它告诉我两个节点之间是否存在路径.我是否还需要更多帮助功能才能更轻松地实现dijkstras?

现在我只有3个节点,但我想编写的代码通常需要为n个节点工作.

任何形式的帮助表示赞赏.

log*_*og0 5

你可能想的很多.

你需要2件事.您理解的干净图形结构.您理解的算法的良好描述.如果你有两个.刚开始写一些代码.所需的助手将在途中变得明显.

- 编辑 -
您可能需要以下某些数据结构
std::vector std::list std::priority_queue