文章

63

粉丝

0

获赞

0

访问

4.4k

头像
2016年计算机学科专业基础综合试题 - 第43题回答
数据结构
发布于2025年11月4日 18:35
阅读数 8


评分及理由

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

得分:2分

理由:学生的基本设计思想是"利用快速排序,将集合A转化为升序排列的有序数组",然后取前⌊n/2⌋个元素作为A₁,其余作为A₂。这种方法能够满足题目要求,但效率不高。标准答案使用的是基于快速选择的思想,只需要找到第⌊n/2⌋小的元素作为划分点,而不需要对整个数组进行完全排序。学生的方法虽然正确但不够高效,因此扣2分。

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

得分:5分

理由:学生给出了完整的快速排序实现,包括QuickSort和Partition函数,代码逻辑基本正确。但是:

  • 没有实现题目要求的划分算法,而是给出了通用的排序算法
  • 没有计算S₁和S₂的和,也没有返回|S₁-S₂|的值
  • Partition函数中的交换逻辑可能存在边界问题
  • 没有体现"满足|n₁-n₂|最小且|S₁-S₂|最大"这一核心要求的具体实现

由于核心功能缺失,扣4分。

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

得分:1分

理由:学生分析的时间复杂度O(nlogn)和空间复杂度O(logn)是针对完整快速排序的正确分析。但题目要求的是划分算法,标准答案的时间复杂度是O(n),空间复杂度是O(1)。学生的分析没有针对题目要求的算法,因此扣1分。

题目总分:2+5+1=8分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发