ダーツでグラフを実装しようとしています。
ノード (頂点)、エッジ、グラフのクラスを作成することを考えました。
主なアイデアは、グラフにはノードのリストとエッジのリストがあるということです。
後で、グラフにいくつかの検索アルゴリズムを実装します。
また、各ノードに近隣ノードのリストを追加して (近隣ノードのリスト)、各ノードがその近隣ノード (正確には後続ノード) を認識できるようにすることも考えています。ここでの私の考えは、ノードがこの情報を持っている場合、アルゴリズムが毎回エッジリストをチェックする必要がある場合よりも、1 つのノードの後続ノードを取得する方が速いということです。変更 (エッジ、ノードの削除、新しいエッジ、ノードの追加) も、2 つの場所で更新する必要があるため、コストが高くなることはわかっています。しかし、現時点では、作成後にグラフをあまり動的にする予定はありません。
このアプローチは理にかなっていると思いますか、それとも私のやり方には市長の欠点があるのでしょうか?