gpt4 book ai didi

c++ - 查找 vector C++ 的唯一元素

转载 作者:搜寻专家 更新时间:2023-10-31 01:25:57 27 4
gpt4 key购买 nike

有没有一种快速的方法可以找到元素 vector 中的所有单个元素(只出现一次)? vector 中的所有元素都是单元素或双元素(出现两次)。我的答案是对所有元素进行排序,然后删除重复出现的元素。有什么更快的方法吗?

最佳答案

因此对于足够小的 n (<=1e8) 排序和删除(使用 std::sort()std::unique)方法仍然比散列更快表格。

示例代码:O(n log n)

vector<int>A = {1,2,3,1,2,5};
sort(A.begin(),A.end());
A.erase(unique(A.begin(),A.end()),A.end());
for(int&x:A)
cout<<x<<" ";

关于c++ - 查找 vector C++ 的唯一元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56033676/

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