文章

35

粉丝

0

获赞

0

访问

1.4k

头像
2013年计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年10月21日 18:00
阅读数 20


评分及理由

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

得分:3分

理由:学生的算法设计思想使用了一个长度为n的计数数组来统计每个数字出现的次数,然后遍历计数数组找到出现次数超过n/2的元素。这种方法能够正确找出主元素,思路正确,但相比标准答案的摩尔投票法,空间复杂度为O(n)而不是O(1),在空间效率上不如标准答案。考虑到题目要求"尽可能高效的算法",这种解法在空间效率上有所不足,因此扣1分。

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

得分:6分

理由:学生按照自己的设计思想实现了算法,代码逻辑正确,能够完成主元素的查找功能。代码结构清晰,注释恰当。但算法空间复杂度较高,没有达到最优,因此扣1分。代码中有一个小问题:在第二个循环中,应该检查R[j] > n/2,但题目要求m > n/2,如果m正好等于n/2+0.5(当n为奇数时),这个条件是正确的;但如果n为偶数,m需要大于n/2,这个条件也是正确的。不过代码实现是准确的。

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

得分:2分

理由:学生正确分析了算法的时间复杂度为O(n)和空间复杂度为O(n),与实现的算法一致,分析准确。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发