[請問] 程式的時間複雜度

作者: MMaze (Maze)   2020-07-09 15:37:48
幫人代po
想請問以下程式的各行分別的1.執行次數以及2.時間複雜度
以下是否正確?
執行次數 時間複雜度
1 y=x; 1 O(l)
2 z=1; 1 O(1)
3 while (n>0){ log2(n) +1 O(log(n))
4  if (n%2==1) log2(n) O(log(n))
5   z = z*y; log2(n) * (1/2) O(log(n))
6  y=y*y; log2(n) O(log(n))
7  n=n/2; log2(n) O(log(n))
  }
作者: gaaki (結衣醬我的<3)   2020-07-09 18:00:00
功課自己寫才會進步唷
作者: Schottky (順風相送)   2020-07-09 18:04:00
他自己寫了,只是在問答案對不對而已第五行的執行次數還是 log2(n) 因為我們看 worst case如果 n 的每一個 bit 都是 1 那每次都會執行到不過這個不影響大局所以我是覺得沒有什麼重要性.....
作者: MMaze (Maze)   2020-07-09 18:27:00
樓上非常謝謝你!

Links booklink

Contact Us: admin [ a t ] ucptt.com