通过一组比较对数据进行排序

时间:2015-07-17 19:48:57

标签: c++ sorting

以许多比较的形式给出输入数据,例如'a> b','d< b','c> a',...

如何构建排序(最大到最小)排序? (我不必担心被给予不可能的输入;总会有一个正确的顺序。)

我正在考虑将函数作为参数写入std :: sort,它将查找比较列表中的每个元素,但我认为这不会处理传递性的概念。

1 个答案:

答案 0 :(得分:2)

您实际上并不需要进行基于比较的排序。

为每个不等式构造一个带有有向边的有向图,然后运行Topological Sorting。这将以线性时间运行。

提升图库有implemented