[讨论] 单班 11.1

楼主: suhorng ( )   2011-12-06 23:26:26
很多人满分了,可是 Scoreboard 上也有一些 9 分的
今天跟一个同学研究的结论是内存动态开会比较理想
也就是说,若直接用阵列把资料个数开好的话,需要把空间开足够
但是这题的测资很大,而且好像挺接近内存限制的边界,
所以稍微开大一点很容易内存超过限制当掉,不容易抓到刚好的边界
一种方法可以是先扫过一次得到正确的内存数量,再动态的开阵列
(动态内存或是 int a[n]; 之类的, 虽然后者不太正规, 但都可以通过测试)
我个人写递回, 确实可过(Linux 上递回可以超深....), 也挺好写的
另外要注意一下有可能输入的本来就是空指标... 什么也不用印
-
另外HW11还满少人写的...不过虽然这章教了二元搜寻树、链结串行、...etc,
但是HW11不一定要把二元搜寻树建出来XD 虽然我不知道老师出这题是希望看到
怎样的解法...
输入给的级别可能是个提示吧,举例来说
r
____________/

s
/ \
/ \
a d
/ \ \
b c e

f
则 c、f 的级别分别是 4 和 5 (呃....好像一般比较常叫这个东西'深度'? depth)
此外, s 是从 r 走到 c、以及 r 走到 f 的路中最后一个共通的节点, 级别为 1
可以观察到 c、f 之间的距离是 c 到 s 的距离 + s 到 f 的距离
而 c 到 s 的距离是 c 的级别减去 s 的级别,
f 到 s 的距离是 f 的级别减去 s 的级别.
作者: tiefblau (tiefblau)   2011-02-06 23:32:00
递回!
楼主: suhorng ( )   2011-02-06 23:34:00
是唷XD 五行短短的很开心
作者: telgniw (易)   2011-02-07 08:06:00
九分通常是爆NULL然后书泓你干么讲出来这题不用建treeQQ
楼主: suhorng ( )   2011-02-07 08:54:00
qq因为输入实在太奇怪了 一般二元搜寻树应该会照顺序给键值不给深度 但是这题却是不照顺序给键值然后给深度
作者: hasheesh (反正就是~超.好.吃!)   2011-02-07 11:48:00
HW11 judegegirl 网站上看不到题目 QQ
作者: bemyself (self)   2011-02-07 17:07:00
请问有没有测资没有深度为1的点? 或是有两个以上?
楼主: suhorng ( )   2011-02-07 17:40:00
不太懂意思, 根节点不就是唯一的深度为 1 的点吗 ?

Links booklink

Contact Us: admin [ a t ] ucptt.com