假设我有一个包含以下元素{1、1、2、3、3、4}的向量,我想编写一个使用c ++代码的程序,以删除唯一值,并且仅将重复项保留一次。因此,最终结果将是这样的{1,3}。
到目前为止,这是我所做的,但是要花很多时间,请问有什么方法可以提高效率,
vector <int> g1 = {1,1,2,3,3,4}
vector <int> g2;
for(int i = 0; i < g1.size(); i++)
{
if(count(g1.begin(), g1.end(), g1[i]) > 1)
g2.push_back(g1[i]);
}
v.erase(std::unique(g2.begin(), g2.end()), g2.end());
for(int i = 0; i < g2.size(); i++)
{
cout << g2[i];
}
Run Code Online (Sandbox Code Playgroud)