文章

95

粉丝

50

获赞

1

访问

12.3k

头像
2019年(408)计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年11月9日 16:22
阅读数 155


评分及理由

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

学生给出了基本正确的算法思想:使用快慢指针找到中间结点,然后逆置后半部分链表,最后合并前后两部分。这与标准答案的思路一致。但描述中"线性表上中间结点的位置"没有明确说明是下中位数点,且"后半部分结点逆置"的细节描述不够清晰。考虑到基本思想正确,扣0.5分。得2.5分。

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

代码实现存在多处严重问题:

  • 函数参数定义错误:LinkList L, *node 语法错误
  • 变量定义错误:使用int*类型定义链表指针,应该是NODE*
  • 内存分配错误:为p、q、s分配了不必要的内存
  • 快慢指针逻辑错误:p = p->next->next可能访问空指针
  • 链表逆置逻辑完全错误:s->next = q->next会造成循环链表
  • 合并链表逻辑错误:head->next = head->next是无效操作
  • 缺少头结点处理

虽然整体框架符合三步思路,但具体实现存在大量逻辑错误,只能给基本框架分。扣6分,得2分。

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

学生正确给出了时间复杂度O(n),这与标准答案一致。得2分。

题目总分:2.5+2+2=6.5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发