請問資料結構問題.. |
尚未結案
|
yakingkuo
一般會員 發表:3 回覆:5 積分:1 註冊:2004-10-28 發送簡訊給我 |
1. 有個 recursive function C(n,k) = C(n-1,k-1) + C(n-1,k), 請問他的終止條件為什麼是 (k=0) 和 (n=k) 時 C(n,k)= 1
2. 如何算出 Big-O notation.
for(i = 1; i < n; i ) for(j = 1; j < i; j ) if(j % i == 0) for(k=0; k < j; k ) sum ;此題答案為 O(n^3)...為什麼勒..有點搞不懂.. 謝謝回覆.. 發表人 - yakingkuo 於 2004/11/04 00:29:28 |
m8815010
版主 發表:99 回覆:372 積分:289 註冊:2003-11-13 發送簡訊給我 |
引言: 1. 有個 recursive function C(n,k) = C(n-1,k-1) C(n-1,k), 請問他的終止條件為什麼是 (k=0) 和 (n=k) 時 C(n,k)= 1 2. 如何算出 Big-O notation.yakingkuo你好: 題一: 沒記錯的話,你那>= class="code"> int C(int n,int k) { if (nfor(i = 1; i < n; i ) for(j = 1; j < i; j ) if(j % i == 0) for(k=0; k < j; k ) sum ;此題答案為 O(n^3)...為什麼勒..有點搞不懂.. 謝謝回覆.. 發表人 - yakingkuo 於 2004/11/04 00:29:28 if(j % i == 0) 如果沒有的話,那這一段 for(k=0; k < j; k ) sum ; 就永遠不會執行到,因為 j%i 永遠不等於0 也就是不管i等於多少,會執行到的程式碼只有這一行: if(j % i == 0) 現在假設 i=n where n tends to unfinite! 當 i=1 時 上面那一行程式要被執行 0 次 當 i=2 時 上面那一行程式要被執行 1 次 當 i=3 時 上面那一行程式要被執行 2 次 . . . 當 i=n 時 上面那一行程式要被執行 n-1 次 所以總共被執行 1 2 3 ... n-1=1/2(n*n-n) so O(1/2(n*n-n)) ==> O(n^2) 如果題目沒抄錯,似乎是這樣吧??研究研究! 發表人 - |
yakingkuo
一般會員 發表:3 回覆:5 積分:1 註冊:2004-10-28 發送簡訊給我 |
引言: 1. 有個 recursive function C(n,k) = C(n-1,k-1) C(n-1,k), 請問他的終止條件為什麼是 (k=0) 和 (n=k) 時 C(n,k)= 1 2. 如何算出 Big-O notation.哇..果然寫錯, 對不起..是for(i = 1; i < n; i ) for(j = 1; j < i; j ) if(j % i == 0) for(k=0; k < j; k ) sum ;此題答案為 O(n^3)...為什麼勒..有點搞不懂.. 謝謝回覆.. 發表人 - yakingkuo 於 2004/11/04 00:29:28 for(j = 1; j < i*i ; j ) |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |