2017-09-12 101 views
-4

c中是否有任何代碼在給出輸入後分析程序花費的時間,以便通過給出不同的輸入來找到程序的時間複雜度。 但1毫秒的誤差是不能容忍的,我想要準確的時間。c程序的時間複雜度

+1

請參閱[「我如何在C中測量時間?」](https://stackoverflow.com/questions/3557221/how-do-i-measure-time-in-c) –

+0

您如何計劃使用經過的時間來確定算法的複雜性? –

+0

什麼是確切時間? –

回答

2

有函數來計算time.h中時間

只是用它如下面的例子

clock_t start = clock(); 
// your job 
clock_t end = clock(); 
float seconds = (float)(end - start)/CLOCKS_PER_SEC; 
+0

是的,但我不能容忍1毫秒的錯誤。 –

+0

但它沒有給我確切的時間。 –

+0

你永遠不會有確切的執行時間,它總是取決於你的CPU頻率 –

2

如果你定時整個程序,你甚至不需要做任何額外的編碼,因爲是time命令

> time ./a.out 

這將使像

輸出
real 0m5.002s 
user 0m0.001s 
sys  0m0.001s