Вероятно, лучше всего проиллюстрировать небольшой пример.
Учитывая отношения
A < B < C
A < P < Q
Правильный вывод будет
ABCPQ or APQBC or APBCQ ... etc.
Другими словами, любой порядок действителен, в котором сохраняются данные отношения.
Меня больше всего интересует решение, которое проще всего реализовать, но интересны также O (n) по скорости и времени.