4

パス検索用にダイクストラのアルゴリズムを実装しようとしていますが、情報を格納するためにある種の優先キューが必要です。

過去には、例えば fifo や filo PQ は単純に配列を使用し、次に現在の挿入と現在の「ルック」位置への 2 つのポインタを使用し、次に「削除」して項目のルック位置を 1 回上にシフトしました。

ただし、ダイクストラの場合、重量 (または現在の距離) で並べ替えられた PQ が必要であり、PQ の一番上にあるものを確認します。これを C で実装するにはどうすればよいですか?

御時間ありがとうございます!

編集: 人々はバイナリ ヒープについて言及していますが、開始方法について少しヒントを与えてもよろしいですか?

4

1 に答える 1

5

最も簡単なオプションは、C配列に基づくバイナリヒープを実装することです。

于 2012-04-10T13:25:56.570 に答える