文章

117

粉丝

160

获赞

0

访问

3.8k

头像
2011年(408)计算机学科专业基础综合试题 - 第42题回答
数据结构
发布于2025年11月25日 17:35
阅读数 58


评分及理由

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

得分:0分

理由:学生的算法思想是使用归并排序将两个序列合并后取中间位置的值。这与题目要求的时间和空间高效算法不符。题目明确要求"在时间和空间两方面都尽可能高效的算法",而归并方法的时间复杂度为O(n),空间复杂度为O(n),而标准答案采用的分治方法时间复杂度为O(log₂n),空间复杂度为O(1),明显更优。学生的思路没有达到题目要求的高效性。

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

得分:3分

理由:

  • 代码实现了归并排序的功能,逻辑基本正确(+3分)
  • 但存在严重问题:中位数位置计算错误,返回的是S3[L],实际上应该是S3[L-1](因为数组下标从0开始,总长度为2L,中位数应该是第L个元素,即下标L-1)
  • 算法整体思路不符合题目高效性要求
  • 代码风格和注释基本清晰

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

得分:1分

理由:

  • 时间复杂度分析基本正确:归并排序的时间复杂度确实是O(n)(学生写的是O(nlogn),但归并两个有序序列是O(n))(+1分)
  • 空间复杂度分析正确:O(n)(+1分)
  • 但时间复杂度分析有误,扣1分

题目总分:0+3+1=4分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发