2019 全国硕士研究生入学统一考试

计算机学科专业基础2019 真题档案

47道题150满分
公告
目前真题为测试版,可能还会有错误。如果遇到想指出的错误,欢迎发邮件到 beokayy@qq.com 供我们勘误;预计两周后修正大部分错误后,将开放 PDF 做题本的免费下载。目前真题为测试版,可能还会有错误。如果遇到想指出的错误,欢迎发邮件到 beokayy@qq.com 供我们勘误;预计两周后修正大部分错误后,将开放 PDF 做题本的免费下载。
41 / 47
返回整卷
BOK 数据结构
数据结构

2019-41

综合题13

设线性表 L=(a1,a2,a3,…,an-2,an-1,an) 采用带头结点的单链表保存,链表中的结点定义如下:

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

请设计一个空间复杂度为 O(1) 且时间上尽可能高效的算法,重新排列 L 中的各结点,得到线性表 L'=(a1,an,a2,an-1,a3,an-2,…)。要求:

1)给出算法的基本设计思想。
2)根据设计思想,采用 C 或 C++ 语言描述算法,关键之处给出注释。

3)说明所设计算法的时间复杂度。

41