C# 在c中表示路由(从一个地方到下一个地方到下一个地方等等)的最佳方式是什么#

C# 在c中表示路由(从一个地方到下一个地方到下一个地方等等)的最佳方式是什么#,c#,.net,oop,C#,.net,Oop,我创建了一个解决方案,该解决方案有一个路线,提供从一个站点(地点)到另一个站点的信息,等等。该解决方案还提供各种信息,这些信息不是直接链接到站点,而是链接到路径(一个到另一个),如物流提供商提供的往返天数和运输方式。 现在,我有一个实体,它的属性像SourceSite、TargetSite、ShuttleDays、Shipping method等,以了解我使用的完整路线这个实体的列表 我们已经使用它创建了数十万条路线 不知何故,我觉得这不是表示数据的最佳方式,因为这些实体需要按顺序排列,其中fi

我创建了一个解决方案,该解决方案有一个路线,提供从一个站点(地点)到另一个站点的信息,等等。该解决方案还提供各种信息,这些信息不是直接链接到站点,而是链接到路径(一个到另一个),如物流提供商提供的往返天数和运输方式。 现在,我有一个实体,它的属性像SourceSite、TargetSite、ShuttleDays、Shipping method等,以了解我使用的完整路线这个实体的列表

我们已经使用它创建了数十万条路线

不知何故,我觉得这不是表示数据的最佳方式,因为这些实体需要按顺序排列,其中first的TargetSite应该始终是next的SourceSite


有没有更好的设计思路。

对我来说,听起来你想要一个用


基本上,字典SourceSite->列出从源站点到各种目标的路径。

看看
算法。它们使用您在这里描述的结构类型来解决诸如最短路径之类的特定问题。你可能会在那里找到灵感。关闭我过去使用的
MinCostFlow
算法。一般的想法是使用一个节点,其属性表示您可以发布并要求改进的路由