文章

68

粉丝

0

获赞

0

访问

1.2k

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


评分及理由

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

得分:0分

理由:学生的基本设计思想是采用合并排序的思路,通过逐个比较两个序列的元素来找到第L大的元素。但题目要求的是两个等长升序序列的中位数,根据题目定义,两个序列的中位数应该是合并后序列的第L个元素(因为总长度为2L,中位数是第L个)。然而,学生的思路虽然能正确找到中位数,但时间复杂度为O(L),而标准答案采用二分查找思想,时间复杂度为O(log₂n),明显更高效。题目要求"在时间和空间两方面都尽可能高效的算法",学生的算法在时间效率上未达到最优,因此不能得分。

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

得分:0分

理由:学生实现的代码虽然逻辑正确,能够找到两个序列的中位数,但算法效率不高。代码通过逐个比较和移动指针的方式合并序列,直到找到第L个元素,时间复杂度为O(n),而题目要求尽可能高效的算法,标准答案的二分法时间复杂度为O(log₂n)明显更优。此外,代码中变量命名和注释不够清晰,没有体现高效的算法设计思想。

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

得分:2分

理由:学生正确分析了算法的时间复杂度为O(L)(即O(n))和空间复杂度为O(1),这个分析是正确的。虽然算法本身不够高效,但对复杂度的分析准确,因此给予满分。

题目总分:0+0+2=2分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发