文章
119
粉丝
0
获赞
3
访问
6.3k

评分及理由
(1)得分及理由(满分3分)
得分:3分
理由:学生的基本设计思想与标准答案一致,都提出了使用辅助数组记录已出现的绝对值,通过一趟扫描链表进行删除操作。思路正确完整,符合题目要求。
(2)得分及理由(满分2分)
得分:2分
理由:单链表结点的数据类型定义正确,使用了typedef定义结构体类型,包含data和link两个成员,与标准答案一致。
(3)得分及理由(满分8分)
得分:4分
理由:算法实现存在多处逻辑错误:
1. 数组flag[n]声明错误,n应该是变量但未定义
2. 循环条件i < m不合理,应该遍历链表直到结束
3. 在删除结点后仍然执行free(p),会导致重复释放
4. 没有考虑头结点的处理
5. 缺少辅助数组初始化为0的步骤
但核心思路正确,使用了辅助数组标记已出现的绝对值,并尝试删除重复结点。
(4)得分及理由(满分2分)
得分:1分
理由:正确指出空间复杂度为O(n),但时间复杂度标注为O(n)不够准确,应该是O(m),其中m是链表长度。
题目总分:3+2+4+1=10分
登录后发布评论
暂无评论,来抢沙发