文章

103

粉丝

93

获赞

1

访问

8.8k

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


评分及理由

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

得分:2分

理由:学生答案的基本思路是正确的,通过排序后取前一半和后一半确实能满足题目要求。但是标准答案要求的是"尽可能高效的划分算法",而排序的时间复杂度是O(nlogn),没有达到标准答案中O(n)的快速选择算法的高效要求。因此扣2分。

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

得分:5分

理由:

  • 代码实现了排序和划分的基本功能,逻辑基本正确
  • 但存在以下问题:
    • huafen函数中第二个循环的起始索引应该是n/2而不是n/2+1,这会漏掉中间元素
    • 没有计算和返回S2-S1的值,不符合题目要求
    • 使用了递归的快速排序,效率不如标准答案的快速选择
    • 空间复杂度较高,使用了额外的数组A1和A2
  • 根据逻辑错误扣分:索引错误扣2分,缺少返回值扣2分

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

得分:1分

理由:时间复杂度分析正确,但空间复杂度分析不准确。递归的快速排序空间复杂度是O(logn),但代码中还使用了额外的O(n)空间来存储A1和A2,因此空间复杂度应该是O(n)。扣1分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发