映射向量的时间复杂性是多少
What is the time complexity of mapping a vector?
我有一个int映射到向量,
map<int,vector<int>> m
假设我将n元素映射到x。
现在,当我写作时, vector v = m [x]
映射向量的时间复杂性是多少。是因为迭代器还是o(n(!
o(logn(要找到键,然后o(n(复制向量,但是实际的时间复杂性本质上是渐近的,并且应该比O(nlogn(更好性能。
因此,时间复杂性是big-oh(nlogn(。
从 std::map
中抽象一个值为o(log n(。
请注意,除此之外,您还取出map
值的值副本,也许
const vector& v = m[x];
会更好?
std::map
是二进制树。因此,单个元素查找是o(log n(复杂性。
但是,除此之外,在您的情况下,vector
复制将是O(n(复杂性。
但是,第一个表达式中的 n 是地图中键的数量表达式,代表 value 。
的大小假设两个 n 的幅度相同,整体复杂性将为O(n*logn(。
相关文章:
- 具有未知值时的时间复杂性
- 使用堆查找第K个最大元素的时间复杂性
- 解决这个问题的时间复杂性是多少
- 如果你有一个固定大小的数组,你需要遍历它!n次,使用二进制搜索如何改变时间复杂性
- 对于像C++这样的现实世界语言,时间复杂性有什么一致的定义吗
- 两个嵌套循环的运行时间复杂性:二次型还是线性
- 是平衡二进制树上预购和DFS的时间复杂性
- 带有多个内部回路的循环的时间复杂性
- 列表STL的时间复杂性在一段时间内进行排序
- O(2M N)和O(kN)的时间复杂性
- 映射向量的时间复杂性是多少
- 时间复杂性差异以及如何
- 递归最糟糕的情况时间复杂性
- 可传递值影响递归算法的渐近时间复杂性
- 程序的时间复杂性确定两个字符串是否彼此排列
- 为什么此代码O(n)的时间复杂性
- next_perMuart的时间复杂性在大o符号中
- C 中使用了哪种类型的堆以及STD :: Pirstity_queue的时间复杂性
- 如何根据多少时间来发表IF陈述
- 带有两个递归调用的递归算法的时间复杂性