Например, если у меня есть список
[1,4,2,3,5,4,5,6,7,8,1,3,4,5,9,10,11]
Этот алгоритм должен возвращать [1,2,3,4,5,6,7,8,9,10,11].
Чтобы уточнить, самый длинный список должен работать вперед. Мне было интересно, что это алгоритмически эффективный способ сделать это (желательно не O (n ^ 2))?
Кроме того, я открыт для решения не в python, так как алгоритм имеет значение.
Спасибо.