文章

52

粉丝

0

获赞

0

访问

1.7k

头像
2017年计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年10月7日 17:02
阅读数 12


评分及理由

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

得分:3分

理由:学生的基本设计思想与标准答案的中序遍历思路一致,但存在以下问题:
1. 对根结点的处理描述不够准确,标准答案通过深度参数控制括号,而学生答案将根结点单独处理,这可能导致最外层不必要地添加括号或缺少必要括号。
2. 描述中"自树根向下遍历"的表述不够严谨,中序遍历本质是深度优先遍历。
3. 对非根非叶结点的处理描述存在冗余,但核心思想正确。
扣2分主要是因为根结点处理方式不够完善。

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

得分:6分

理由:代码实现存在以下逻辑错误:
1. 主要问题:对根结点的处理方式错误。学生在main函数中单独处理根结点,先递归左子树,再输出根结点数据,再递归右子树,这种处理方式会导致:
- 根结点的左右子树都会额外添加括号(因为PrintNode函数对所有非叶结点都会添加括号)
- 根结点本身的操作符位置可能不正确
2. 缺少深度控制:标准答案通过deep参数控制括号的添加,只在deep>1时添加括号,确保最外层不添加括号。学生代码对所有非叶结点都添加括号,包括根结点的子树,这会导致输出结果出现多余括号。
3. 函数设计不完整:应该设计一个统一的递归函数来处理整个表达式树,而不是在main函数中拆分处理。
扣4分主要是因为根结点处理逻辑错误和缺少深度控制机制。

题目总分:3+6=9分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发