public class PassedPath
{
private string _curNodeID;
private bool _beProcessed;
private double _weight;
private ArrayList _passedIDList;
public PassedPath(string id)
{
_curNodeID = id;
_weight = double.MaxValue; // 初始不可達
_passedIDList = new ArrayList();
_beProcessed = false;
}
public bool BeProcessed
{
get => _beProcessed;
set => _beProcessed = value;
}
public string CurNodeID => _curNodeID;
public double Weight
{
get => _weight;
set => _weight = value;
}
public ArrayList PassedIDList => _passedIDList;
}
double.MaxValue 表示不可達。演算法過程中不斷更新 Weight 與 PassedIDList,最終得到最短路徑。