文章

52

粉丝

0

获赞

0

访问

1.6k

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


评分及理由

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

得分:3分

理由:学生的基本设计思想与标准答案一致,都使用了大小为n的辅助数组来记录已经出现过的绝对值,通过遍历链表并根据辅助数组的值来决定保留或删除结点。思路正确且完整,因此得满分。

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

得分:1分

理由:学生的数据类型定义存在错误。在第一次识别中,结构体定义中使用了"Node*"作为类型名,这是不正确的;在第二次识别中,结构体定义正确,但缺少了指向结构体的指针类型定义(如标准答案中的PNODE)。由于定义不完整,扣1分。

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

得分:3分

理由:学生的算法实现存在多处逻辑错误:
1. 没有正确处理头结点(标准答案中是从h->link开始处理)
2. 在第一个while循环中缺少移动指针的操作,会导致死循环
3. 在第二个while循环中,对H->next->data的访问可能造成空指针异常
4. 没有考虑data的绝对值,直接使用data值作为数组下标
5. 主函数中不应该包含算法逻辑,应该封装成独立函数
6. 缺少对辅助数组的动态分配
由于存在较多逻辑错误,但基本框架正确,给予3分。

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

得分:1分

理由:学生正确指出了时间复杂度和空间复杂度都是O(n),但应该更准确地说明时间复杂度是O(m)(m为链表长度),空间复杂度是O(n)。由于基本正确但不精确,扣1分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发