gpt4 book ai didi

c++ - 如何检查 unordered_set 重叠?

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

我有两个 unordered_sets,需要检查第一个的所有元素是否也是第二个的元素。

有没有一种快速的方法可以做到这一点,还是我应该使用另一个容器?<​​/p>

最佳答案

只需使用一个循环(或相应的算法)。复杂度与要测试的范围的大小(近似)呈线性关系。

template <typename UnorderedSet, typename Iterator>
bool contains_all(UnorderedSet&& set, Iterator first, Iterator last)
{
using value_type = std::iterator_traits<Iterator>>::value_type;
return std::all_of(first, last, [&set] (const value_type& value) {
return set.count(value);
});
}

关于c++ - 如何检查 unordered_set 重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22206792/

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