文章

133

粉丝

0

获赞

0

访问

13.6k

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


评分及理由

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

得分:2分

理由:学生基本理解了使用辅助数组标记已出现绝对值的思想,但描述中存在逻辑错误。学生提到"设置一个计数数组"和"删除所有有bool数组为true且访问数据的值大于1的元素",这与标准答案中仅使用一个标记数组(而非计数数组)且仅删除重复出现的逻辑不符。不过核心思路正确,扣1分。

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

得分:2分

理由:单链表结点的数据类型定义完全正确,与标准答案一致。

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

得分:6分

理由:算法实现基本正确,使用了辅助数组标记已出现的绝对值,通过遍历链表删除重复元素。但存在以下问题:
1. 函数名使用了"func"而非更具描述性的名称(不扣分,题目未要求)
2. 缺少对头结点的处理说明(不扣分)
3. 主要逻辑错误:在else分支中,当遇到新元素时,pre指针应该跟随p指针一起移动,但代码中pre = pre->next的写法正确,此处不扣分
4. 缺少对辅助数组的释放操作,存在内存泄漏问题,扣2分

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

得分:1分

理由:时间复杂度分析正确为O(n),但实际应该是O(m)(m为链表长度),空间复杂度分析正确为O(n)。由于时间复杂度分析不够准确,扣1分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发