文章
20
粉丝
0
获赞
0
访问
1.1k
评分及理由
(1)得分及理由(满分4分)
得0分。学生的算法思想是将两个序列合并后排序再取中位数,这种方法虽然正确但效率较低。题目要求"在时间和空间两方面都尽可能高效的算法",标准答案采用的是O(log₂n)时间复杂度的二分查找思想,而学生的思路是O(nlog₂n)的排序方法,没有达到题目对高效性的要求。
(2)得分及理由(满分9分)
得3分。理由:
- 代码实现了合并数组和快速排序的功能,逻辑基本正确(+3分)
- 但存在严重逻辑错误:函数参数中已经传入A[]和B[],又在函数内部重新定义int A[n], B[n],这是语法错误且会导致编译失败(-3分)
- 快速排序的实现基本正确,但中位数计算C[(m+n-1)/2]对于偶数个元素的情况可能不准确(-3分)
- 整体算法思路与题目要求的高效算法不符
(3)得分及理由(满分2分)
得1分。理由:
- 正确分析了快速排序的时间复杂度O(nlog₂n)和空间复杂度O(log₂n)(+1分)
- 但这不是最优复杂度,题目要求尽可能高效,应该有更好的O(log₂n)时间复杂度算法(-1分)
题目总分:0+3+1=4分
登录后发布评论
暂无评论,来抢沙发