我需要带有可能包含大量元素的C++向量,擦除重复项并对其进行排序.
我目前有以下代码,但它不起作用.
vec.erase(
std::unique(vec.begin(), vec.end()),
vec.end());
std::sort(vec.begin(), vec.end());
Run Code Online (Sandbox Code Playgroud)
我怎样才能正确地做到这一点?
此外,首先擦除重复项(类似于上面编码)或首先执行排序是否更快?如果我首先执行排序,是否保证在std::unique执行后保持排序?
或者还有另一种(也许是更有效的)方法来做这一切吗?