文章

180

粉丝

0

获赞

0

访问

12.6k

头像
2014年(408)计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年11月24日 17:32
阅读数 86


评分及理由

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

学生答案给出了使用先序遍历的基本设计思想:通过递归遍历二叉树,传递层级参数,遇到叶子结点时累加权重与深度的乘积。这与标准答案中基于先序遍历的思路一致,表述清晰。因此得3分。

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

学生答案定义了二叉树结点的数据类型,包含weight、left和right三个域,与标准答案一致。虽然结构体名称使用了TNode而非BiTNode,但这不影响正确性。因此得4分。

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

学生答案实现了先序遍历算法,通过全局变量wpl记录结果,在递归函数中判断叶子结点并累加权重与深度的乘积。算法逻辑正确,但存在以下问题:
1. 使用了全局变量wpl,虽然功能正确,但不符合模块化设计原则,可能引起副作用。标准答案使用static变量或参数传递更合理。
2. 函数命名function不够明确,应改为WPL等更具描述性的名称。
3. 缺少对空树的处理,但代码中已有if(T==NULL) return,实际可以处理空树。
鉴于算法核心逻辑正确且能正确计算WPL,扣1分。因此得5分。

题目总分:3+4+5=12分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发