文章

57

粉丝

0

获赞

0

访问

4.5k

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


评分及理由

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

得分:0分

理由:学生的设计思想是使用双指针遍历两个序列,通过比较大小移动指针,当计数器达到两序列长度和的一半时返回当前较小值。这种方法的时间复杂度为O(n),而题目要求"在时间和空间两方面都尽可能高效的算法"。标准答案采用二分查找思想,时间复杂度为O(log₂n),明显更高效。学生的思路虽然正确但不够高效,不符合题目对时间效率的要求。

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

得分:2分

理由:代码存在多处逻辑错误:
1. 变量i和j未初始化(i未初始化,j初始化为0)
2. 循环条件count < mid应该改为count <= mid,因为需要找到第mid个元素
3. 当count达到mid时,应该返回当前指向的两个元素中的较小值,但代码在循环结束后直接比较A[i]和B[j]返回,逻辑不完整
4. 没有考虑两个序列长度相等的情况下的中位数定义
代码基本实现了双指针遍历的思路,但存在严重逻辑缺陷。

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

得分:1分

理由:时间复杂度分析正确(O(n)),空间复杂度分析也正确(O(1)),但考虑到算法本身不够高效,给1分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发