文章

188

粉丝

0

获赞

0

访问

55.1k

头像
2022年(408)计算机学科专业基础综合试题 - 第42题回答
数据结构
发布于2025年12月10日 15:16
阅读数 230


评分及理由

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

学生答案描述了使用大小为10的大根堆来查找最小的10个数的算法思想:先将前10个元素建堆,然后遍历剩余元素,若当前元素小于堆顶(最大值),则替换堆顶并调整堆。这一思路与标准答案中的方法二(大根堆思想)完全一致,且描述清晰。因此,本小题得满分5分。

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

学生答案给出的时间复杂度为O(nlog10),空间复杂度为O(10)。
时间复杂度分析:建大小为10的堆为常数时间O(1)。后续遍历n-10个元素,每次与堆顶比较为O(1),若需要替换并调整堆,调整操作的时间复杂度为O(log10)。因此,总时间复杂度为O(n * log10) = O(n),因为log10是常数。学生写作O(nlog10)在渐进意义上等价于O(n),但严格写法应为O(n)或O(nlogk),其中k=10。考虑到这是对常数规模堆的操作,且核心思想正确,此处不扣分。
空间复杂度O(10)即O(1),正确。
因此,本小题得满分5分。

题目总分:5+5=10分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发