The
nub function removes duplicate elements from
a list. In particular, it keeps only the first occurrence of each
element. (The name
nub means `essence'.) It is a special case
of
nubBy, which allows the programmer to supply their own
equality test.
>>> nub [1,2,3,4,3,2,1,2,4,3,5]
[1,2,3,4,5]
If the order of outputs does not matter and there exists
instance
Ord a, it's faster to use
map
Data.List.NonEmpty.head .
Data.List.NonEmpty.group .
sort, which takes
only <math> time.