ダイクストラ法
ダイクストラ法では、 A {\displaystyle A} 内で d ( u ) {\displaystyle d(u)} が最小になる頂点 u {\displaystyle u} ( = {\displaystyle =} 次に落下が停止する頂点)を求めて u {\displaystyle u} を出力し、それにあわせて管理しているデータを更新し、そしてさらに次に落下が停止する頂点を求める、という操作を繰り返す。
そこで最後に、ダイクストラ法が管理しているデータを更新する方法を述べる。
A {\displaystyle A} 内で d ( u ) {\displaystyle d(u)} が最小になる頂点 u {\displaystyle u} ( = {\displaystyle =} 次に落下する頂点)が求まったら、まず u {\displaystyle u} を H {\displaystyle H} に追加する。それにあわせて A {\displaystyle A} から u {\displaystyle u} を除去し、 u {\displaystyle u} に隣接していてかつ H {\displaystyle H} に属さない頂点を A {\displaystyle A} に加える。
ダイクストラ法の擬似コードは以下の通りである。始点(スタート)から全てのグラフの頂点への最短経路を求める。
Q {\displaystyle Q} は頂点の集合(もしくは優先度付きキュー)。 u {\displaystyle u} , v {\displaystyle v} は頂点。 d ( v ) {\displaystyle d(v)} は始点となる頂点からの最短経路の長さ。 prev  ( v ) {\displaystyle \operatorname {prev} (v)} は最短経路をたどる際の前の頂点。
グラフ G = ( V , E ) {\displaystyle G=(V,E)} 、始点となる頂点 s {\displaystyle s} 、および u {\displaystyle u} から v {\displaystyle v} への辺の長さ length ( u , v ) {\displaystyle {\text{length}}(u,v)} を入力として受け取る