文章

238

粉丝

0

获赞

3

访问

32.7k

头像
2018年计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年9月26日 16:45
阅读数 43


评分及理由

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

学生答案的基本设计思想是使用一个长度为n+1的哈希表来统计1~n出现的次数,然后遍历哈希表找到第一个值为0的位置。这种思路是正确的,能够解决问题,且时间复杂度为O(n)。虽然与标准答案(原地标记法)不同,但根据评分要求“思路正确不扣分”,因此本题得3分。

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

学生提供的C语言代码实现了上述设计思想。代码逻辑清晰,正确使用了哈希表统计1~n范围内正整数的出现次数,并正确返回未出现的最小正整数。代码中有一个小问题:哈希表初始化时使用了“int hash[n + 1] = {0};”,这在C99标准中是可变的长度数组(VLA)并初始化为0,是合法的。但需要注意,如果编译器不支持VLA或初始化,可能会有问题,但根据题意和常见环境,可以接受。代码关键部分有注释,符合要求。因此本题得8分。

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

学生正确分析了时间复杂度为O(n)和空间复杂度为O(n),与算法实际性能一致。因此本题得2分。

题目总分:3+8+2=13分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发