public VertexEx(TV d, int inDegree = 0, int outDegree = 0, VStatus status = VStatus.Undiscovered, int dTime = -1, int fTime = -1, int parent = -1, int priority = Int32.MaxValue) : base(d, inDegree, outDegree, status, dTime, fTime, parent, priority) { Edges = List <EdgeEx <TE, TW> > .ListFactory(); }
public Vertex(TV d, int inDegree = 0, int outDegree = 0, VStatus status = VStatus.Undiscovered, int dTime = -1, int fTime = -1, int parent = -1, int priority = Int32.MaxValue) { Data = d; InDegree = inDegree; OutDegree = outDegree; Status = status; DTime = dTime; FTime = fTime; Parent = parent; Priority = priority; }
public int CheckSum() { int ret = 0; ret += VMake.CalCheckSum(); ret += VModel.CalCheckSum(); ret += VYear.CalCheckSum(); ret += VType.ToDescription().CalCheckSum(); ret += VVIN.CalCheckSum(); ret += VRegion.CalCheckSum(); ret += VLocation.CalCheckSum(); ret += VStatus.ToString().CalCheckSum(); return(ret); }
protected override void Status(int index, VStatus status) { _list[index].Status = status; }
/// <summary> /// 设置顶点的状态 /// </summary> /// <param name="index">顶点的序号</param> /// <param name="status">值</param> protected abstract void Status(int index, VStatus status);