作者just1016 (我是女生女生爱我)
看板TransCSI
标题Re: [问题] 程式语言与搜寻演算法
时间Wed Apr 11 13:40:34 2007
※ 引述《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
1F:推 qaz1234567q:太感谢您了~~~~真是简单易懂呀!!! 04/12 00:42