文章
113
粉丝
0
获赞
6
访问
53.6k

评分及理由
(1)得分及理由(满分5分)
得分:2分
理由:学生的基本设计思想是"先统计表长,再将l和k比较",这与标准答案要求的一趟扫描高效算法不符。学生的方法需要两趟扫描(一趟统计长度,一趟查找位置),效率较低。虽然思路可行,但不符合题目"尽可能高效"的要求,因此扣除3分。
(2)得分及理由(满分5分)
得分:2分
理由:详细实现步骤描述中,学生明确说明需要"遍历一次链表"统计长度,然后再"从头查找",这确认了两趟扫描的方法。步骤描述清晰但效率不高,与最优解有差距,扣除3分。
(3)得分及理由(满分5分)
得分:2分
理由:代码实现存在多个逻辑错误:
1. while循环条件"p->next != NULL"会导致少统计一个节点
2. 在l>k的情况下,最后输出的是"L->next->data"而不是p->data
3. 参数列表缺少k参数(第一次识别结果)
4. 当l==k时应该返回倒数第k个节点(即第一个节点),但代码逻辑混乱
虽然代码基本框架正确,但存在明显逻辑错误,扣除3分。
题目总分:2+2+2=6分
登录后发布评论
暂无评论,来抢沙发