c++ - std::advance 在 std::multiset 的迭代器上是否在恒定时间内完成?

标签 c++ stl iterator multiset

我想知道在 std::multiset 的迭代器上调用 std::advance 是否在常数时间内完成。

最佳答案

不,只有随机访问迭代器可以在恒定时间内前进。否则,它是距离的线性时间。

参见:https://en.cppreference.com/w/cpp/iterator/advance

关于c++ - std::advance 在 std::multiset 的迭代器上是否在恒定时间内完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53174053/

相关文章:

c++ - Hello World CUDA 编译问题

c++ - std::multimap::equal_range 的时间复杂度

java - 如何在 Java 中获取迭代器的集合?

c++ - binary_search 通过其成员函数的返回变量查找类对象 [c++]

iterator - 如何从一个范围创建一个 Vec 并对其进行洗牌?

c++ - 项目中枚举类的迭代

c++ - 将文件从 vb.NET 客户端发送到 C++ 服务器

c++ - 为什么这个构造函数被调用两次?

c++ - if() 似乎不起作用 - C++ opengl 空闲函数

c++ - 如何在 for_each 中组合函数和谓词?