文章

338

粉丝

0

获赞

1

访问

34.8k

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


评分及理由

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

学生答案采用计数排序思想,通过创建计数数组来记录每个正整数出现的次数,然后从1开始查找第一个出现次数为0的位置。这种思路能够正确解决问题,与标准答案的哈希标记法不同但同样有效。基本设计思想描述清晰,得3分。

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

算法实现存在以下问题:
1. MAX的定义不明确,代码中未说明如何获取MAX值,实际应用中MAX应该是数组中的最大值加1,但题目要求找出未出现的最小正整数,MAX可能远大于n,导致空间复杂度高
2. memset使用错误,sizeof(count)返回的是指针大小而不是数组大小
3. 没有考虑数组中可能包含大于n的值,这些值不应该影响结果
4. 如果数组中所有1到n的正整数都出现了,应该返回n+1,但该代码在这种情况下会访问越界

由于存在明显的逻辑错误和实现问题,扣4分,得4分。

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

学生正确分析了时间复杂度为O(n),但空间复杂度分析不准确。由于MAX可能远大于n,空间复杂度实际上是O(MAX)而不是O(m),且m的定义不明确。考虑到学生基本理解了复杂度分析的概念,扣1分,得1分。

题目总分:3+4+1=8分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发