chapter16test9

原创 2015年07月07日 16:58:55


测试效果挺好的,时间明显缩短了

#include<iostream>

#include<vector>
#include<list>
#include<ctime>
#include<cstdlib>
#include<algorithm>
using namespace std;
int main()
{
srand(time(0));
int const size = 100000;
vector<int>vi0(size);
for (int i = 0; i < size; i++)
vi0[i] = rand();
vector<int>vi(vi0);    //define vi
list<int>li(vi0.begin(), vi0.begin() + size);   //define li


clock_t start0 = clock();
sort(vi.begin(), vi.end());
clock_t end0 = clock();
cout << "For vector<int> time0 :" << (double)(end0 - start0) / CLOCKS_PER_SEC;
cout << endl;
clock_t start1 = clock();
li.sort();
clock_t end1 = clock();
cout << "For list<int> time1 :" << (double)(end1 - start1) / CLOCKS_PER_SEC;
cout << endl;
clock_t start2 = clock();
copy(vi0.begin(), vi0.begin() + size,li.begin());    //redefine li
copy(li.begin(), li.end(), vi.begin());
sort(vi.begin(), vi.end());
copy(vi.begin(), vi.begin() + size,li.begin());
clock_t end2 = clock();
cout << "For list<int> time2 :" << (double)(end2 - start2) / CLOCKS_PER_SEC;
cout << endl;
return 0;
}

相关文章推荐

thinking in java test chapter9接口(11)~(19)适配器模式,工厂模式

练习(11):创建一个类,它有一个方法用于接受一个String类型的参数,生成的结果是将该参数中每一个字符进行互换。对该类进行适配,使得它可以用于interfaceprocessor.Apply.pr...

thinking in java test chapter6练习(1)~(9)以及翻译问题

练习(1):在某个包中创建一个类,在这个类所处的包外部创建该类的实例。 代码如下:public class testTest6_1 { public static void main(S...

thinking in java test chapter9接口(1)~(10)

抽象方法是没有方法体的方法,java提供的一种机制,仅有声明而没有方法体。语法:abstract void f(); 包含抽象方法的类叫做抽象类。如果一个类包含一个或多个抽象方法,该类必须被限定为抽...

thinking in java test chapter10(1)~(21)

练习(1):编写一个名为Outer的类,它包含一个名为Inner的类。在Outer中添加一个方法,它返回一个Inner类型的对象。在main()中,创建并初始化一个指向某个Inner对象的引用。 ...

thinking in java test chapter8(13)~(17)

练习(13):在ReferenceCounting.java中添加一个finalize()方法,用来检校终止条件。 finalize()方法是垃圾回收器在清理对象是会优先调用的方法,用以清理一些垃圾...

chapter12test2

写了一上午终于把test2搞定,技术还有待提高,要多练习,一点半了,有点饿,去吃点什么好的补补脑子 我把树上的程序改了,题目里面没有要求的都删减了,留下的都用上了,最费时的是类复制和字符指针赋值,然...

thinking in java test chapter8多态(1)~(12)

练习(1):创建一个Cycle类,它具有子类Unicycle,Bycycle,Tricycle.演示每一个类型的实例都可以经由ride()方法向上转型为Cycle. 向上转型就是允许将多种从同一基...

chapter15test1

这一题跟树上的程序差不多,只是要求tv与remote互为友元,并且在remote中定义一个新的状态变量,我用的state,并且在tv中定义了一个change(remote &),以下是程序,因为所有的...

chapter11test1

这个程序的主要都是书上清单11.15; 我不喜欢书上的单位标示,就自主修改了一下,意思差不多,那个文件输出是第一次尝试,感觉挺好的 vector.h #ifndef VECTOR_H_ #define...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:chapter16test9
举报原因:
原因补充:

(最多只允许输入30个字)