文章

47

粉丝

0

获赞

0

访问

18.4k

头像
2009年计算机学科专业基础综合试题 - 第42题回答
数据结构
发布于2025年10月12日 15:58
阅读数 548

1.运用双指针的思想,初始设立两个指针A,B分别指向链表的头结点,B指针向后遍历K次,后两指针同步向后,当B指针指向链尾时,A指针指倒数第K个节点。

2.首先定义链表数据结构,程序运行前判断该链表长度是否大于K,否返回错误,是则进行下一步骤,B指针向后遍历K次,后两指针同步向后,当B指针指向链尾时,A指针指倒数第K个节点。


评分及理由

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

得分:4分

理由:学生的基本设计思想描述基本正确,使用了双指针方法,通过一趟扫描找到倒数第k个节点。但描述中"B指针向后遍历K次"不够准确,应该是"B指针先移动k次",且没有明确说明两个指针的初始位置都在第一个节点(头结点的下一个节点)。扣1分。

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

得分:3分

理由:学生描述了实现步骤,但存在以下问题:①"程序运行前判断该链表长度是否大于K"这一步骤在实际算法中无法实现,因为题目要求不改变链表且尽可能高效,提前判断长度需要额外遍历;②步骤描述不够详细,缺少计数变量的使用;③没有处理k值超过链表长度的情况。扣2分。

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

得分:0分

理由:学生没有提供具体的代码实现,题目明确要求"采用程序设计语言描述算法",因此该部分得0分。

题目总分:4+3+0=7分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发