Re: [理工] [資結]台大96-電機丙
線代總算突破Vector Space和線性映射的無字天書區,
來幫忙解個演算法qqqqqqqqqq
應該一定會有錯,所以請幫忙揪出錯誤!
※ 引述《starbury8 (馬不理不思議)》之銘言:
: http://www.lib.ntu.edu.tw/exam/graduate/96/96412.pdf
: 請問5,6要怎麼判斷??
: 我分別是寫D,C
: 還有9,14題
: 以及11的(B)選項
: 謝謝!!
5. 我的想法是這樣的
假設c(n)表示fib(n)「包含其自己在內」,所有fib()的Function Call次數
則透過程式碼的觀察,我們可以得到
c(n) = c(n-1) + c(n-2) + 1 且c1 = 1, c2 = 1
是可以透過離散的遞迴公式去算,但這題是fib(10)
所以可以考慮硬爆結果,得到c(10) = 109(寫過程式了,應該沒錯)
另外請問一下解題的大家,「fib(10) 本身」到底算不算一次Recursive call?
我看了一下後面那題,應該是不算,所以是d沒錯吧?
6. 這樣先從執行的順序去考慮。考慮把這個遞迴畫成一張圖:
10
/ \
9 8
/ \
8 7
/ \
7 6
(省略...)/
/
/ \
4 3
/ \
3 2
/ \
2 1
(樹不是Complete?沒錯,這是故意的,見下面說明)
10的左子樹9,右子樹8表示fib(10)會先呼叫fib(9)再呼叫fib(8),然後再return自己
於是我們可以把它執行的順序想像成是postorder的順序
所以最先執行到的會是最下面且最左邊的fib(2)
於是我們可以用postorder的順序去慢慢看這是怎麼一回事
fib(2)和fib(1)會先執行,同時他們的值會被記下,然後就換fib(3)了
fib(3)執行完換fib(2),但他的值已經被記得了,可以直接拿下來!
所以就不用重算一遍。於是跳到上一層的fib(4)繼續...
然後透過觀察,可以注意圖中右子樹的值在執行到之前都已經被記錄下來了
因此最後畫出來的圖就像圖上這樣,除了樹根以外有16個節點,選(c)
9. 我猜(b)(c)(e)
我的理論如下,不太肯定(e),歡迎糾正我:
(a) X,size是root中所有後代的數量再加一(root自己也要算)
(b) O,深度定義是到root的路徑長,x為y的後代,所以x會擁有較大的深度
(c) O,T包含S,S包含R,所以T會包含R吧?(爛講法)
(d) X,不對:對一個n-元樹而言,Full指的是所有非葉子的節點都有n個兒子
題目給的是對Perfect tree的定義
(e) O,假設原來是一個高度為n的Complete tree
假如他Level n完全沒有右子樹的後代,那他的右子樹就是高n-2的Perfect tree
反之,他的右子樹就是高為n-1的Complete tree
這題是圖論問題 Orz,建議你趕快找本離散來看?
11. (b)我猜是True
考慮以下圖,應該會是Size最小的可能...
○
/ \\\\
高=1 ○ [d-1個節點]
/
高=2 ○
... /
/
○ 高=h
樹根有最大的Degree d,因此樹的Degree是d
這樣的樹size是h+(d-1)+1,所以應該是True
14. (b)(d)(e),我對這題有點怕怕的,搞不好有很多陷阱...
(a) X,根據不同Order的定義這題的答案會不一樣,但應該都是X
假若採用Knuth的定義,Order為2的B-tree就會是一顆Binary Tree
但考慮以下Order=2的B-Tree,其不為Full Binary Tree:
5
/
3
假若「Order是每個節點中最少需要的Key」
那這棵樹根本就不會是Binary Tree
我原來的解法把Degree和Order搞混了... Orz
(b) O,Binary Search Tree的基本規則
(c) X,"trie"就是"prefix tree"(請找Huffman algorithm的介紹)
顯然不是一棵平衡樹
(d) O 2-3 Tree有平衡機制
(e) O 紅黑樹有平衡機制(還很難記! Q____Q)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.127.180.190
→
02/07 00:01, , 1F
02/07 00:01, 1F
→
02/07 00:09, , 2F
02/07 00:09, 2F
→
02/07 00:18, , 3F
02/07 00:18, 3F
我把Order跟Degree徹底地搞混了........ Orz 我以為是Degree = 2,感謝
看了一下Wikipedia,Order竟然有三種定義,看樣子是Knuth(1993b)的定義比較主流?
試著更正了,再有錯請跟我說一下
※ 編輯: ybite 來自: 122.127.180.190 (02/07 00:48)
推
02/07 00:39, , 4F
02/07 00:39, 4F
→
02/07 00:40, , 5F
02/07 00:40, 5F
→
02/07 00:41, , 6F
02/07 00:41, 6F
→
02/07 00:41, , 7F
02/07 00:41, 7F
推
02/07 00:44, , 8F
02/07 00:44, 8F
→
02/07 01:00, , 9F
02/07 01:00, 9F
→
02/07 01:00, , 10F
02/07 01:00, 10F
→
02/07 01:23, , 11F
02/07 01:23, 11F
推
02/07 01:52, , 12F
02/07 01:52, 12F
→
02/07 01:53, , 13F
02/07 01:53, 13F
推
02/07 03:24, , 14F
02/07 03:24, 14F
→
02/07 03:24, , 15F
02/07 03:24, 15F
→
02/07 03:27, , 16F
02/07 03:27, 16F
→
02/07 10:25, , 17F
02/07 10:25, 17F
→
02/07 15:32, , 18F
02/07 15:32, 18F
→
02/07 21:23, , 19F
02/07 21:23, 19F
→
02/03 15:07, , 20F
02/03 15:07, 20F
→
02/03 15:07, , 21F
02/03 15:07, 21F
→
02/03 15:17, , 22F
02/03 15:17, 22F
→
02/03 15:18, , 23F
02/03 15:18, 23F
→
09/11 14:13, , 24F
09/11 14:13, 24F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):