文章

180

粉丝

0

获赞

0

访问

18.9k

头像
2012年(408)计算机学科专业基础综合试题 - 第42题回答
数据结构
发布于2025年11月17日 18:53
阅读数 87



评分及理由

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

得分:3分

理由:学生的基本设计思想描述基本正确,包括计算两个链表长度、根据长度差调整起始位置、然后同步遍历寻找共同结点。但描述中"让大的链表先走差值的步数-1"存在表述不准确,应该是走差值步(不是差值-1),这可能导致实际实现时少走一步。由于思路核心正确但存在小瑕疵,扣1分。

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

得分:5分

理由:代码实现存在较多问题:
1. 变量q未定义(在lenA>lenB分支中使用了未声明的q)
2. 在lenA>lenB分支中,q初始化为B->next,但在lenA≤lenB分支中,q初始化为A(应该统一为头结点或第一个实际结点)
3. 最后的while循环条件错误:应该是p != q,而不是p != NULL
4. 返回位置错误:应该返回共同结点,但代码中最后p已指向NULL
5. 缺少对空链表的处理
由于存在多个逻辑错误,严重影响了算法的正确性,扣3分。

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

得分:1分

理由:时间复杂度分析正确,为O(n),符合题目要求。

题目总分:3+5+1=9分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发