文章

62

粉丝

0

获赞

0

访问

1.9k

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


评分及理由

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

得分为1分。学生的基本设计思想是使用两个辅助数组(B和count)来记录不重复元素及其出现次数,然后找出最大值。虽然思路可行,但效率较低,不符合题目要求的"尽可能高效的算法"(标准答案使用O(n)时间O(1)空间的算法)。该思路需要O(n)的额外空间,且时间复杂度可能达到O(n²),因此只能给1分。

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

得分为2分。代码实现存在多处严重问题:
1. 语法错误:使用了未定义的"data.A"、"data.B"、"A.len"等
2. 逻辑错误:count[k++]++会导致数组越界和逻辑混乱
3. 循环条件错误:for(count[k]=0; count[k] 语句不完整
4. 返回值错误:return count[j] 应该返回对应的元素值而非计数
5. 缺少主元素判断逻辑:没有判断出现次数是否大于n/2
虽然代码体现了统计元素出现次数的基本想法,但由于存在大量逻辑错误,只能给2分。

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

得分为1分。学生正确分析了算法的时间复杂度O(n²)和空间复杂度O(n),这与他们提出的算法思路是一致的。虽然分析正确,但由于算法本身效率不高,给1分。

题目总分:1+2+1=4分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发