关系的数据结构
问题内容:
我正在将VB6转换为C#,我想使保存值和关系的数据结构更有效。在VB中,我具有值的集合以及这些值之间的关系的另一个集合,这些关系具有优先级。我还有一种算法,当将一组值传递给它时,会返回将这些值连接在一起所需的所有关系。例如,说值集合包含1-10,关系集合包含
1,2
3,2
5,2
2,8
8,10
9,10
如果输入为1,9,10,则返回的关系为-
1,2
2,8
8,10
9,10
由于可能存在多条路径,因此将返回最少数量的关系,但是存在关系优先级的警告。如果关系具有更高的优先级,则将添加该关系,然后从那里添加其余关系。我正在考虑使用不交集数据结构,但不确定。
有任何想法吗?
更多信息 -
值的数量通常小于100,关系小于500。这些集合是静态的,该算法将一次又一次地用于查找路径。另外,我没有问这个问题,但是不相交集数据结构中的算法是否最有效?
问题答案: