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}]

Ответы на вопрос(1)

Ваш ответ на вопрос