首先用兩種方法計算1-1/x+1/x*x……然後比較其所用時間。本文涉及linux下測量毫秒級時間精度的問題。
方法1:
//write in ubuntu11.04
#include#include#includeint main()
{ struct timeval t_start,t_end;
double x,sum=1,sumx=1;
int n,j,i;
printf("input x n\n");
scanf("%lf %d",&x,&n);//lf 輸入double 型別
gettimeofday(&t_start,null);//第乙個引數存放當前時間,第二個存放時區資訊
for(j=0;j
方法2:
#include#include#includeint main()
{ struct timeval t_start,t_end;
double x,sum=1,sumx=1;
int n,j,i;
printf("input x n\n");
scanf("%lf %d",&x,&n);//lf 輸入double 型別
gettimeofday(&t_start,null);//第乙個引數存放當前時間,第二個存放時區資訊
for(j=0;j
方法一時間複雜度為n^2,用時561ms,方法二時間複雜度為n,用時0ms。
編譯時遇到error: 『for』 loop initial declarations are only allowed in c99 mode的問題,解決方法如下:
演算法分析 演算法的漸進效率分析
一般用於界定函式集合的上界,漸進表示式o g n 的含義就是,c為正常數,函式集合o中的元素的最大值不會超過c.g n f n o g n 的含義是,函式f n 的屬於集合o g n 因為函式集合o中的最大值為c.g n 所以f n 的最大值為c.g n 由於只是漸進的上界,所以當函式g n 的階數...
KMP演算法的效率分析
上一節,我們研究了kmp演算法的實現原理,這節,我們從分析的角度看看kmp演算法的時間複雜度和它的正確性。我們先看計算匹配字串最長字尾陣列的的函式 private intgetlongestsuffix int s throws exception if pi s 1 pi s 0 int k ge...
for迴圈用效率分析( 和 時效率的差異分析)
聽別人說的面試中問過的乙個問題,記不清了,如有偏差希望大家補充糾正 問題 完成相同的功能,for迴圈使用 和 哪個效率更高?通常我們在編寫需要for迴圈實現的程式時有兩種實現方法 for int i 0 ifor int i arr.length 1 i 0 i 結論 通常來講第2種用 的方法效率更...