algorithm - 从一组偏序中重建一个序列

标签 algorithm sequence

我有一组元素对。这些对中的每一对都意味着:在最终序列中,第一个元素在第二个元素之前。 该组对包含足够的对来重建一个独特的序列。

例如。 :

如果我的配对集是{(A, B), (A, C), (C, B)}

= A 先于 BA 先于 CC 先于 B

我的最终序列是ACB

现在,我需要一种算法来从这种配对集中重建序列。 效率至关重要。欢迎任何聪明的提示!

最佳答案

从这些对创建有向图,然后执行 topological sort .

关于algorithm - 从一组偏序中重建一个序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4969712/

相关文章:

django - django事务大小的自适应优化

javascript - 找不到数组逆向算法问题的解决方案

algorithm - 使用 O(k) 内存的 O(N) 运行时间哈希

c++ - Leetcode-167:两个和II-输入数组已排序

python - 对有限集中的符号列表进行编码的最紧凑方法是什么?

python - 计算自最后一个头以来的尾数

php - 相当于 glob() ,它可以使用数组而不是文件系统

r - 如何定义某些行序列中没有 NA 的列?

python - Python 中的 "Physically Stored Sequence"是什么?

r - 按数据帧中每个递增顺序分组