c++ - find() 函数对于集合有效吗?

标签 c++ find set

就我而言,二分查找是确定排序数组中是否存在某个元素 x 的最有效方法。因此,我想知道使用 find() 或 count() 函数来执行查找元素的过程是否是个好主意,或者使用排序数组而不是集合更合理应用二分查找法。

最佳答案

是的,它很有效。

集合包含唯一且已排序的元素。因此 find() 使用二分查找,并且在 N 个元素的集合中具有 O(logN) 复杂度。插入也是对数的,以保持其排序和唯一性。

关于c++ - find() 函数对于集合有效吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50687312/

相关文章:

javascript - 为什么 Set 的原型(prototype)方法在调用 Object.create(Set.prototype) 时会抛出错误

c++ - 为什么 Same<T, U> 不包含 Same<U, T>?

c++ - 如何使用std::find查找具有struct成员值的set元素?

c++ - 如何设置c++编译器生成的代码

c++ - 在较大的字符串中搜索字符串

linux - 使用 bash 中的查找重命名多个级别的目录

c++ - 为什么使用 `std::map::find` 来检查 map 是否有 key ?

java - 转换内部 advance for 循环以检查 null

c++ - 结构与类的前向声明

c++ - 防止跳过静态变量初始化