如何在向量中找到第一个重复项 - C++?

Apa*_*che 1 c++ vector

我有一个具有不同值的向量,其中一些可能会出现两次.(只有两次.)
我怎样才能找到第一个重复的项目?

喜欢:[a] [b] [b] [a]
然后我需要'b'.

(抱歉新手问题.)

Oli*_*rth 7

如果您正在寻找相邻的重复项,您可以简单地使用std::adjacent_find.

如果重复项不一定相邻,则可以先std::sort使用向量,然后std::adjacent_find对结果使用. (见@ aix的评论如下)

或者,您可以将每个元素推入a中std::set,并在执行时查找碰撞.

  • (+1)排序方法不一定按照问题的要求定位*first*重复. (2认同)