接続されたグラフの最短経路を見つけるダイクストラ モデルを実装しようとしています。私が持っているのは、ボタンを押すと、グラフ上にランダムにノードを生成するグラフです。
私がやりたいことは次のとおりです。
- グラフが接続されているかどうかを判断する
- 接続されている場合、最短パスを見つける 3 つの異なる方法のいずれかを決定します。開始ノードと終了ノード間の距離による最短経路 b. エッジ数による最短経路 c.エッジの総重みによる最短経路 (ここでは、より少ない重みが必要です...)
その他のメモ。
これらの DataPoints はこの chartcontrol でランダムに生成されるため、頂点を生成するための Vertex クラスは実際にはありません。私は周りを検索しており、ほとんどのパス検索関数が頂点クラスを利用していることを確認しています。したがって、基本的に私のリストは、チャート コントロールから離れたノードから取り込まれます。
上記の2つの質問を解決する方法について、誰かが何らかの洞察を提供できますか?
//TODO: Change to a function with return bool. Void for purposes of testing at the moment.
public void isConnected()
{
List<DataPoint> ParentPoints = new List<DataPoint>();
//Gather all the non data generator into the same point array
foreach (DataPoint pNonDG in chtGraph.Series[0].Points)
{
ParentPoints.Add(pNonDG);
}
}