文章

167

粉丝

0

获赞

0

访问

10.9k

头像
2013年计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年11月3日 17:05
阅读数 36


评分及理由

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

得分:3分

理由:学生的基本设计思想是使用辅助数组统计每个元素的出现次数,然后遍历辅助数组找到出现次数超过n/2的元素。这种方法虽然正确,但空间复杂度为O(n),而标准答案使用了Boyer-Moore投票算法,空间复杂度为O(1)。学生的算法思想正确但不够高效,因此扣1分。

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

得分:6分

理由:学生正确实现了使用辅助数组统计频率的算法,代码逻辑清晰,能够正确找出主元素。但存在以下问题:
1. 代码中使用了变长数组int B[n] = {0},这在某些C++标准中不支持(虽然在一些编译器中可以运行),但考虑到题目允许使用C/C++/Java,且这是语法细节问题,不扣分。
2. 算法空间复杂度较高,没有达到"尽可能高效"的要求,因此扣1分。

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

得分:2分

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

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发