文章

986

粉丝

5

获赞

20

访问

254.0k

头像
2025 年 9 月第 1 次 408 月考试卷 - 第41题回答
数据结构
发布于2025年11月6日 20:46
阅读数 180


评分及理由

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

得分:3分

理由:学生的设计思想描述清晰,与标准答案中的暴力解法思路一致。先遍历每个结点,判断是否同时存在左右子树,然后分别计算左右子树与当前结点的最小距离,若相等则计数。思路正确,描述完整。

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

得分:6分

理由:学生的代码实现了暴力解法,整体逻辑正确,但存在以下问题:

  • minDistance函数中,递归调用时传递的target参数是当前结点的值,但计算距离时应该用当前遍历到的子树结点值与target(即父结点值)的差值。这里逻辑正确,但实现方式效率较低,与暴力解法一致。
  • 主要扣分点:minDistance函数中,返回值的三元表达式逻辑有误。当distance不是最小时,应该返回leftDistancerightDistance中的较小值,但学生的代码中直接比较leftDistancerightDistance,没有考虑distance可能比其中一个子树的返回值小但比另一个大的情况。正确写法应该是先比较distance与左右子树返回值的最小值。此处逻辑错误,扣3分。
  • 其他部分:递归遍历计数正确,代码结构清晰。

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

得分:2分

理由:学生正确分析了时间复杂度为O(n²),与暴力解法的时间复杂度一致,分析正确。

题目总分:3+6+2=11分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发