推 qaz1234567q:太感謝您了~~~~真是簡單易懂呀!!! 04/12 00:42
※ 引述《qaz1234567q (死亡與恐懼)》之銘言:
: 1.如下所示,其結果為何?
:
: main()
: { printf("%D",fun(3,4); }
x,y
: Func(int x, int y)
: {
: If(y = = 0) return(1)
: else return (x * func(x,y-1)); <---*
: }
: Ans:81
: 疑問:我不了解的地方是*字號那行,一個整數型態要怎麼去乘以一個座標
: 而且還能在回傳一個座標?
它不是乘座標 而是 * 呼叫函數func()
(x * func(x,y-1)) 這行指
3 * func(3,4-1)
^^^^^^^^^^^ = 3 * func(3,4-1-1)
^^^^^^^^^ = 3 * func(3,4-1-1-1)
^^^^^^^^^^^^ 3 * func(3,4-1-1-1-1)
^^^^^^^^y=0 回傳1
3*(3*(3*(3*1))) = 81
: 2.下列何者產生完全二元搜尋樹?
如果你對"完全二元搜尋樹"的定義不熟 =.= 先去唸完資構再來吧
: A ` B ` C...略
: (D)John ` Mary ` Grace ` Chris ` Lily ` James <---正解
你要先知道大小寫ASCII碼 在大寫中 大寫A是最小 A<B<C<....
(什麼碼都一樣) 在小寫中 小寫a是最小 a<b<c<....
然後比大小一定從字串的第一個字母比較
第一個英文字母一樣 則比較第二個字母
1.首先 John 的 J < Mary的 M 所以放在J的右邊
John
\
\
Mary
2.再來 Grace 的 G < John 的 J 所以放在J的左邊
John
/ \
/ \
Grace 먺Mary
3.再來 Chris 的 C < John 的 J 所以放在左子數
Chris 的 C < Grace 的 G 所以放在Grace的左邊
John
/ \
/ \
Grace Mary
/
/
Chirs
4.再來 Lily 的 L 都 > John 的 J 和 Mary的 M
John
/ \
/ \
Grace Mary
/ \
/ \
Chirs Lily
5.最後一個 James 的 J = John 的 J 所以比較第二個英文字母
James 的 a < John 的 o 所以Jame是放在左子數
再來比較 James 的 J > Grace 的 G 所以掛Grace的右邊
John
/ \
/ \
Grace Mary
/ \ \
/ \ \
Chirs James Lily
: ㄙ器D該從何著手...= ="
: 3.以快速排序法(Quick Sort)將下列由小到大排序:9`17`11`14`9'`5`10
: 經過第一回合後,此串列排序為何?
: Ans: 9' 5 9 14 11 17 10
: 我的排序過程:
: 9 17 11 14 9' 5 10
: key i j
: i > j , 交換
: 9 10 11 14 9' 5 17
: i j
: i > j , 交換
: 9 10 5 14 9' 11 17
: i j
: i > j ,交換
: 9 10 5 9' 14 11 17
: 矛盾點出現了.....
: 排到最後變成這個鳥樣....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.127.52.112