文章

88

粉丝

38

获赞

0

访问

2.7k

头像
2014年计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年10月24日 16:31
阅读数 36


评分及理由

(1)得分及理由(满分3分)

得分:3分。学生答案给出了使用前序遍历的方法,通过递归遍历每个叶结点并记录深度,然后累加深度与权值的乘积得到WPL。这与标准答案中基于先序遍历的设计思想一致,思路正确且完整。

(2)得分及理由(满分4分)

得分:3分。学生定义了二叉树结点的数据类型,包括weight、left和right指针,但存在以下问题:
- 第一次识别中结构体定义有语法错误(typedef struct LNode* LNode; 重复定义)。
- 第二次识别中结构体定义正确,但缺少了类型别名定义(如BiTNode, *BiTree)。
由于核心结构定义正确,但类型别名缺失,扣1分。

(3)得分及理由(满分6分)

得分:4分。学生给出了基于前序遍历的算法实现,但存在以下逻辑错误:
- 第一次识别中代码不完整,有重复的递归调用语句,且未定义函数返回类型。
- 第二次识别中函数定义为void类型,但WPL计算需要返回值,且使用全局变量wpl不符合题目要求的封装性(标准答案使用static变量或参数传递)。
- 全局变量wpl在多次调用时会导致累加错误,未初始化且无法重置。
由于算法核心逻辑正确(递归遍历和WPL计算),但实现存在封装性和多次调用问题,扣2分。

题目总分:3+3+4=10分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发