文章
7
粉丝
0
获赞
0
访问
372
评分及理由
(1)得分及理由(满分3分)
学生第一次识别提到“遍历各结点,算出其左子树结点与本结点及右子树结点与本结点间距离的绝对值,若相等,count++”,这基本符合暴力解法的思想(先序遍历,计算左右子树的最小距离并比较)。但描述过于简略,没有明确说明如何计算最小距离(例如需要遍历子树所有结点),也没有提到需要判断左右子树是否存在。第二次识别提到“先序遍历所有结点,算出其在子树中与本结点及左右子树结点的最小距离的绝对值”,同样简略且不准确(“左右子树结点的最小距离”表述模糊)。因此,设计思想描述不完整,扣1分。得分:2分。
(2)得分及理由(满分9分)
学生提供的代码存在严重错误:
- 第一次识别:代码片段不完整且语法错误(如`PreOrder TreeNode`无效调用,条件判断`root.left - root.left`无意义)。
- 第二次识别:递归函数`PreOrder`未实现任何功能(仅遍历),而`countNodes`函数仅递归统计结点数,未实现题目要求的条件判断(计算最小距离并比较)。核心逻辑缺失。
因此,代码完全不符合题目要求,无法正确统计满足条件的结点数。扣9分。得分:0分。
(3)得分及理由(满分2分)
学生未分析算法时间复杂度。扣2分。得分:0分。
题目总分:2+0+0=2分
登录后发布评论
暂无评论,来抢沙发