Удаление повторов (2)
Удаление повторов
Условие
Напишите шаблонную функцию
template <typename T>
void RemoveDuplicates(std::vector<T>& elements);
принимающую по ссылке вектор elements
объектов типа T
и удаляющую из него все дубликаты элементов. Порядок оставшихся элементов может быть любым.
Гарантируется, что объекты типа T
можно сравнивать с помощью операторов ==
, !=
, <
и >
.
Указание
Рассмотрите использование алгоритмов std::sort
, std::unique
и метода std::vector::erase
для решения этой задачи.
Ограничения
- Количество элементов от
0
до10^6
- Время работы функции не должно превышать
0.5
секунд
Как тестировать локально
Собрать программу с помощью cmake
и запустить ctest
:
mkdir build; cd build
cmake ..; cmake --build .
ctest -V