STL各个容器性能详细比较
作者:
从下面表中的数据来看写入用时vector和deque很快,因为他们内存分配次数少,关联容器和list都是一个一个分配的,一个一个分配也会造成内存碎片,内存利用率低
写入40M的int变量
容器 | 内存 | 写入用时 | 从头部移除用时 |
---|---|---|---|
vector | 47M | 5 秒 | |
list | 739M | 21秒 | 69 秒 |
deque | 217M | 4 秒 | 2203毫秒 |
set | 821M | 137秒 | |
map | 905M | 136秒 |
从上面的数据来看写入用时vector和deque很快,因为他们内存分配次数少,关联容器和list都是一个一个分配的,一个一个分配也会造成内存碎片,内存利用率低。
每次在中间插入数据,写入40M的int变量
容器 | 时间 |
---|---|
deque | 太慢不知道什么时候可以完成 |
list | 47秒 |