我有一个任务,主要是在C++
中增加或删除数组中的元素。由于数组不是动态的,但对它们的操作速度非常快,所以我一直在寻找一种动态数据结构,它几乎和运行速度一样快。我一直在考虑std::vector
,但由于它是预定义的,而且非常庞大,所以我担心对我而言至关重要的操作时间。任何人都可以向我提供一些关于您的观点的信息吗?我会很高兴得到您的帮助!C++中最快的动态数据结构
编辑:
我真的很抱歉,我没有列入我的问题的所有重要的一点;下面我想尝试添加更多的信息:
- 我会遍历结构多次的元素和访问它们以随机的方式使操作上的元素在每一个可能的位置是可能的
- 我认为,将会(取决于测试提供的)在数据结构中的元素以及其“边缘”附近进行许多操作。
我相信这将有助于我的帖子更清晰,更具体,因此对他人更有用。
谢谢你所有的答案!
向量通常速度一样快,但问题是,您在哪里插入/删除这些元素? – chris
从数组末尾添加或删除数据非常缓慢,矢量只是使用数组作为基础结构。 – Dukeling
+1 @chris,你需要提供更多信息。另外,基准测试可能是可以选择的。 –