排序知道他们以前的项目

时间:2012-09-14 13:44:34

标签: algorithm

我有一套物品。每个项目都有一个ID和一个PREVIOUS_ID字段。如何有效地对它们进行排序并检测任何周期(错误情况)?

要使其复杂化,我需要按单个序列对它们进行排序,但多个项目可能具有相同的PREVIOUS_ID。

1 个答案:

答案 0 :(得分:1)

随机选择一个,然后按照之前的ID路径,直到没有上一个项目。此时,如果没有剩下的项目,则再次开始,选择一个先前未选择的项目开始。

始终维护一组已访问的项目,以便您可以检测周期。