STL中的vector与list插入数据速度比较
来源:互联网 发布:Ubuntu 安装 login 编辑:程序博客网 时间:2024/06/05 05:01
对于忘list中插入数据,很好理解,分配一个新的结点空间,添加到链表尾部即可;对于往vectorz中添加数据,需要判断当前控件是否够用,不够用的话需要再次分配稍大的一些空间,然后把已有的元素拷贝到新的空间区域,然后释放已有的空间。也许有人觉得这个拷贝操作很费时,觉得没有list添加的速度快,然而,事实并不是这样…..
#include <iostream>#include <time.h> #include <list>#include <vector> using namespace std; const long num = 1000 * 1000 * 100; //添加数据个数//void test_vector_list(long n){ vector<int> num1; list<int> num2; clock_t num1_start = clock(); for(int i=0;i<n;i++){ num1.push_back(i); } clock_t num1_end = clock(); cout<<"Running time vector:"<<static_cast<double>(num1_end - num1_start)/CLOCKS_PER_SEC * 1000 <<"ms"<<endl; clock_t num2_start = clock(); for(int i=0;i<n;i++){ num2.push_back(i); } clock_t num2_end = clock(); cout<<"Running time list:"<<static_cast<double>(num2_end - num2_start)/CLOCKS_PER_SEC * 1000 <<"ms"<<endl;} int main(int argc, char** argv) { test_vector_list(num); return 0;}
0 0
- STL中的vector与list插入数据速度比较
- std::vector与std::list的执行速度比较 (C/C++) (STL)
- std::vector与std::list的执行速度比较 (C/C++) (STL)
- std::vector与std::list的执行速度比较 (C/C++) (STL)
- std::vector与std::list的执行速度比较 (C/C++) (STL)
- std::vector与std::list的执行速度比较 (C/C++) (STL)
- std::vector与std::list的执行速度比较 (C/C++) (STL)
- list与vector的尾部插入删除效率比较
- STL中vector/list的几种赋值方法的速度比较
- STL中vector/list的几种赋值方法的速度比较
- STL容器 vector,list,deque 性能比较
- STL容器 vector,list,deque 性能比较
- STL容器 vector,list,deque 性能比较
- STL系列(6):vector list deque比较
- STL容器 vector,list,deque 性能比较
- STL-list插入与删除
- STL中的容器使用比较(string vector list deque set map)
- STL vector中插入vector数据或数组数据
- I2C总线及AT24C02读写实验报告
- Android中GridView实现标签只选能一个功能
- Zend Studio集成Apigility之添加和测试认证(2/2)
- 游戏外挂基本原理及实现
- HDU-2896 病毒侵袭 && HDU-3065 病毒侵袭持续中(AC自动机)
- STL中的vector与list插入数据速度比较
- PhpStorm配置xdebug
- ARM立即数讲解--LDR和MOV的区别
- 线程控制和线程资源保护
- Appnium实现简单登录
- mysql_ping与mysql长连接
- MyEclipse中项目有红色感叹号的解决方法总结
- atoi函数的实现
- 消息队列RabbitMQ和Kafka