線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1831
推到 Plurk!
推到 Facebook!

請問資料結構問題..

尚未結案
yakingkuo
一般會員


發表:3
回覆:5
積分:1
註冊:2004-10-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-04 00:25:03 IP:211.76.xxx.xxx 未訂閱
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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-04 20:37:17 IP:210.244.xxx.xxx 未訂閱
引言: 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
yakingkuo你好: 題一: 沒記錯的話,你那>= class="code"> int C(int n,int k) { if (n 也就是這個function會將你要求的C(n,k)一直拆解,拆到n=k or k=0才停止!停止後最後解也求出了! 題二: 不曉得這行有沒有抄錯:
 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

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-05 01:25:21 IP:211.76.xxx.xxx 未訂閱
引言: 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   )
系統時間:2024-05-02 8:42:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!