mathprogramming-intro.org/book/node479.html
аю плоские списки с 10 ^ 6 до 10 ^ 7 действительными числами, и некоторые из них повторяются.
Мне нужно удалить повторяющиеся экземпляры, сохраняя только первое вхождение и не изменяя порядок списка.
Ключевым моментом здесь является эффективность, так как у меня много списков для обработки.
Пример (подделка):
Входные данные:
{.8, .3 , .8, .5, .3, .6}
Желаемый вывод
{.8, .3, .5, .6}
В сторону примечание
Удаление повторяющихся элементов с помощью Union (без сохранения порядка) дает в ноутбуке моего бедняка:
DiscretePlot[a = RandomReal[10, i]; First@Timing@Union@a, {i, 10^6 Range@10}]