2001年高程题,高手进来

supkim 2003-10-09 08:47:05
一棵查找二叉树,其结点A、B、C、D、E、F依次存放在一个起始地址为 n ( 假定地址以字节为单位顺序编号 ) 的连续区域中,每个结点占4个字节:前二个字节存放结点值,后二个字节依次放左指针、右指针。

若该查找二叉树的根结点为 E ,则它的一种可能的前序遍历为__(1)__ ,相应的层次遍历为__(2)__。在以上两种遍历情况下,结点C的左指针Lc的存放地址为__(3)__,Lc的内容为__(4)__。结点A的右指针RA的内容为__(5)__。

(1):A.EAFCBD B.EFACDB C.EABCFD D.EACBDF

(2):A.EAFCBD B.EFACDB C.EABCFD D.EACBDF

(3):A.n+9 B.n+10 C.n+12 D.n+13

(4):A.n+4 B.n+8 C.n+12 D.n+16

(5):A.n+4 B.n+8 C.n+12 D.n+16

答案分别是,(1)D (2)A (3)B (4)A (5)B

能不能说明一下,本人不太懂啊
...全文
38 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
yikun 2003-10-09
  • 打赏
  • 举报
回复
查找二叉树的中序遍历就是a,b,d,c,e,f
pebble 2003-10-09
  • 打赏
  • 举报
回复
A是E的左节点是通过这句话判断的
“一棵查找二叉树”
查找二叉树中的根节点的左子树的节点值都小于根节点的值,右子树的节点值都大于根节点的数值
同时其左右子树叶都是查找二叉树
duke_zero_ 2003-10-09
  • 打赏
  • 举报
回复
根据查找二叉树性质和所给答案用排除法得到二叉树
E
/ \
A F
\
C
/ \
B D
其存储数据如下
n 1 2 3 4 5 6 7 8 9 10 11
A B C

C 的左指针位置为N+10 存放B 即N+4
A的右指针存放C为N+8
supkim 2003-10-09
  • 打赏
  • 举报
回复
打错了,就该是
为什么是a就一定为e的左结点呢??
supkim 2003-10-09
  • 打赏
  • 举报
回复
楼上的大哥,这个我已经清楚了,
但是按答案来说e为根结点,那么a应该e的左结点,
我想知道为是a就一定为e的根结点呢??
谢谢
pebble 2003-10-09
  • 打赏
  • 举报
回复
各个节点依次存放,就是A B C D E F顺序存放的
A的地址是n
B的地址是n+4
C的地址是n+8
D的地址是n+12
E的地址是n+16
F的地址是n+20
supkim 2003-10-09
  • 打赏
  • 举报
回复
那个大哥帮一下我啦,分不够再加!
supkim 2003-10-09
  • 打赏
  • 举报
回复
但是那个树是按什么顺序存储的呢?
谢谢
mintwlf 2003-10-09
  • 打赏
  • 举报
回复
你根据地址情况判断根节点及左右子树的情况,把二叉树画出来就什么问题都解决了!
supkim 2003-10-09
  • 打赏
  • 举报
回复
thanks
zengkun100 2003-10-09
  • 打赏
  • 举报
回复
我跟你说一个投机取巧的办法:
题目不是说:“若该查找二叉树的根结点为 E”吗?
E的右接点一点是F吧!所以前序遍历的结果第一个是E最后一个一定是F。
层序遍历第一个是E,第三个一定是F。
前两个题就做出来了,按照前两个题的答案,你可以把树画出来了吧!
GO ON!

2,947

社区成员

发帖
与我相关
我的任务
社区描述
就计算机等级考试、软件初、中、高级不同级别资格考试相关话题交流经验,共享资源。
c1认证c4javac4前端 技术论坛(原bbs)
社区管理员
  • 软件水平考试社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧