怎样对函数记时

来源:百度知道 编辑:UC知道 时间:2024/06/09 14:05:31
常见的排序算法有选择排序、插入排序、希尔排序、冒泡排序、归并排序、快速排序等,每种排序算法的设计思想和运行效率都是不同的,本题要求编写一个程序来大致估计各种算法的效率。教材5.2.3节介绍了随机数生成函数,利用该函数生成一个长度为10000的数组,将各个排序算法写成单独的函数,在主函数中调用这些函数,并为其计时(如何为程序计时可参看教材4.3.3)。(在选择、插入、希尔、冒泡中至少选择两种,在归并和快速中至少选择一种)

使用clock()函数,获得微秒数,如:
clock_t t1, t2, t3;
t1 = clock();
sort1();
t2 = clock();
sort2();
t3 = clock();
printf("time of sort1: %d time of sort2: %d\n", t2-t1, t3-t2);

头文件#include <time.h>
利用clock()函数可以决定在两次事件间的时间,一般为微秒。如果要获得具体多少秒,一般除以CLK_TCK即可。

printf("sort1: %d tsort2: %d\n", int(float(t2-t1)/CLK_TCK), int(float((t3-t2))/CLK_TCK));