文章

49

粉丝

0

获赞

0

访问

1.8k

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


评分及理由

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

得分:3分

理由:学生给出的算法基本设计思想是使用一个大小为n的辅助数组统计每个元素的出现次数,然后检查是否有元素的出现次数超过n/2。这个思路是正确的,能够解决问题,但相比标准答案的摩尔投票法(时间复杂度O(n),空间复杂度O(1)),该算法的空间复杂度为O(n),不是"尽可能高效"的算法。因此扣1分。

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

得分:5分

理由:代码实现基本正确,能够完成主元素的查找功能。但存在以下问题:

  • 代码中有重复的if语句(两个if(Sr[i] > max)),这是逻辑错误,扣1分
  • 变量命名不一致(第一次识别中Sr和Arr,第二次识别中S和A),但考虑到可能是识别问题,不扣分
  • 代码中malloc分配内存后没有free,存在内存泄漏问题,扣1分
  • 算法实现正确,能够完成统计和查找功能

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

得分:2分

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

题目总分:3+5+2=10分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发