文章

35

粉丝

0

获赞

1

访问

4.4k

头像
【2019年】408计算机统考真题模拟考试 - 第41题答案笔记
数据结构
发布于2025年5月15日 09:39
阅读数 133

计算机考研408统考历年真题及答案解析

(1)第一次将a1加入线性表,然后将链表逆置,取第一个节点an,再逆置,取第一个节点a1,依次类推,直到处理完链表

(2)

typedef struct node { int data; struct node *next; } NODE;

动态申请链表指针p,

p=head->next;

head->next==NULL;

while(p) {

node* s = p;

p = p->next;

q->next = head->next;

head->next = q;

Reverse(p);

}

(3)在p指针遍历到末尾时,循环便结束,时间复杂度为O(n)


评分及理由

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

得分:1分

理由:学生的设计思想虽然提到了逆置链表,但方法不够明确和高效。标准答案中明确分为三步:找中点、反转后半段、合并链表。而学生的思路是反复逆置链表,效率较低且逻辑不够清晰,未能完全达到题目要求的时间高效性。

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

得分:3分

理由:学生的代码实现存在以下问题:

  • 代码不完整,缺少关键步骤的实现(如Reverse函数的定义)。
  • 逻辑错误:在循环中反复逆置链表,未正确实现题目要求的交替合并。
  • 变量使用混乱(如q未定义,s未使用)。

虽然代码框架大致正确,但关键逻辑错误较多,未能正确实现功能。

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

得分:1分

理由:学生的时间复杂度分析正确(O(n)),但未能考虑到实际实现中的效率问题(如反复逆置链表的时间开销)。

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


登录查看完整内容


登录后发布评论

暂无评论,来抢沙发