gpt4 book ai didi

c++ - 如何对 Vector 进行排序并删除其中的相同值?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:12:57 28 4
gpt4 key购买 nike

我有一个包含数据的 vector ,例如:15,27,40,50,15,40

我想对它进行排序,去掉相同的值,所以排序后的输出应该是:15,27,40,50

我试过几种方法:

std::sort(vectProjHori.begin(),vectProjHori.end());
for (std::vector<int>::iterator it=vectProjHori.begin(); it!=vectProjHori.end(); ++it)
{
if(it+1 != it)
{
std::cout << ' ' << *it;
}
}

但是,它不能删除 vector 中的相同值。我真的希望有人愿意提供一种有效的方法。

任何帮助将不胜感激。谢谢

最佳答案

您可以使用标准函数来做到这一点。

std::sort(vectProjHori.begin(), vectProjHori.end());
vectProjHori.erase(std::unique(vectProjHori.begin(), vectProjHori.end()), vectProjHori.end());

关于c++ - 如何对 Vector 进行排序并删除其中的相同值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16750699/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com