文章

149

粉丝

0

获赞

0

访问

56.8k

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


评分及理由

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

得分:2分

理由:学生的基本设计思想提到使用快速排序将数组排序后取前n/2个元素,这种方法虽然正确但不够高效。题目要求"尽可能高效的划分算法",而标准答案采用的是基于快速选择的思想,平均时间复杂度为O(n),比全排序的O(nlog₂n)更高效。学生答案没有体现只找前n/2小元素而不全排序的优化思想,因此扣2分。

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

得分:3分

理由:学生提供的代码存在以下问题:

  • 代码只实现了一次快速排序的划分过程,没有实现完整的递归或迭代划分逻辑,无法保证找到前n/2小的元素
  • 函数没有返回值,无法输出S2-S1的结果
  • 代码逻辑不完整,无法完成题目要求的划分任务
  • 缺少对划分后元素求和的代码

虽然代码实现了快速排序的一次划分,但离完整算法差距较大,因此扣6分。

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

得分:1分

理由:学生正确给出了空间复杂度O(1),但时间复杂度分析不正确。如果按照学生提供的代码逻辑,单次划分的时间复杂度是O(n),但完整算法需要O(nlog₂n)。考虑到学生可能是指完整排序的时间复杂度,给1分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发