2026年04月高等教育自学考试《13003数据结构与算法》试题

13003数据结构与算法 历年真题 共 34 题 1038 次浏览 更新于 2026-09-27
下载试卷(PDF)

一、单选题

下列每小题的选项中,只有一项是最符合题意的正确答案,多选、错选或不选均不得分。

1
在数据结构中,从逻辑上可以把数据结构分成
  • A.动态结构和静态结构
  • B.紧凑结构和非紧凑结构
  • C.线性结构和非线性结构
  • D.内部结构和外部结构
2
下列与算法的时间复杂度有关的是
  • A.问题规模
  • B.计算机硬件性能
  • C.编译程序质量
  • D.程序设计语言
3
在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是
  • A.访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
  • B.在第i个结点后插入一个新结点(1≤i≤n)
  • C.删除第i个结点(1≤i≤n)
  • D.将n个结点从小到大排序
4
带头结点的单链表的头指针为head,表为空的判定条件是
  • A.head = NULL
  • B.head->next == NULL
  • C.head != NULL
  • D.head->next == head
5
已知一个的进栈序列是1,2,3,…n,其输出序列是p₁,p₂,…,pₙ,若p₁=n,则pᵢ的值是
  • A.i
  • B.n-i
  • C.n-i+1
  • D.n+1
6
若一个栈用数组data[1..n]存储,初始栈顶指针top为n+1,则以下元素x进栈的操作正确的是
  • A.top++; data[top]=x;
  • B.data[top]=x; top++;
  • C.top--; data[top]=x;
  • D.data[top]=x; top--;
7
在循环队列中元素的排列顺序与
  • A.元素进队的先后顺序有关
  • B.元素值的大小有关
  • C.队头和队尾指针的取值有关
  • D.队中数组大小有关
8
设二维数组a[1..5,1..8],若按列优先的顺序存放数组的元素,则a[4][6]前面元素的个数是
  • A.6
  • B.28
  • C.29
  • D.40
9
对矩阵压缩存储是为了
  • A.方便运算
  • B.方便存储
  • C.提高运算速度
  • D.节省存储空间
10
串是一种特殊的线性表,其特殊性体现在
  • A.可以顺序存储
  • B.数据元素是一个字符
  • C.可以链式存储
  • D.数据元素可以是多个字符
11
设森林F中有3棵树,第一、第二和第三棵树的结点个数分别为m1、m2和m3。与森林F对应的二叉树根结点的右子树上的结点个数是
  • A.m1
  • B.m3
  • C.m1+m2
  • D.m2+m3
12
下列选项中,均为稳定排序方法的是
  • A.堆排序和起泡排序
  • B.快速排序和希尔排序
  • C.简单选择排序和归并排序
  • D.归并排序和起泡排序
13
在下列排序方法中,某一趟结束后未必能选出一个元素放在其最终位置上的是
  • A.堆排序
  • B.冒泡排序
  • C.直接插入排序
  • D.快速排序
14
有100个元素的有序表,采用折半查找方法,不成功时最多的比较次数是
  • A.7
  • B.10
  • C.25
  • D.50
15
哈希表中出现哈希冲突是指
  • A.两个元素具有相同的序号
  • B.两个元素的关键字不同,而其他属性相同
  • C.数据元素过多
  • D.两个元素的关键字不同,而对应的哈希函数值相同

二、填空题

请输入正确的答案,多个答案中间用分号隔开。

16
算法的每一个步骤都必须有确切的含义,这个特性是算法的______。
17
在计算机科学中,______是指所有能输入计算机并被计算机处理的符号的集合。
18
线性表是一个有限序列,组成线性表的是n(n≥0)个______。
19
一维数组a采用顺序存储方式,下标从0开始,每个元素占4个存储单元,a[8]的起始地址为100,则a[11]的起始地址为______。
20
可以进行拓扑排序的有向图一定是______。
21
数据序列(8,7,6,5,4,3,2,1)采用二路归并排序方法进行递增排序,所需要的关键字比较次数是______。
22
对含有n个元素的数据序列进行简单选择排序,总的关键字比较次数是______。
23
归并排序是一个______算法,可以使用非递归或递归的方式实现。
24
为了实现分块查找,线性表必须采用______方法存储。
25
哈希表的查找效率使用______来度量。

三、问答题

主观题不参与评分,请参考答案自行评分。

26
简述递推法的思想。
27
简述二叉树与度为2的树之间的差别。
28
有一棵树的括号表示为A(B,C(E,F(G)),D),回答下面的问题:
(1)指出树的根结点。
(2)指出这棵树的所有叶子结点。
(3)结点C的度是多少?
(4)这棵树的高度是多少?
(5)结点C的孩子结点是哪些?
29
简述顺序查找方法的基本思想。

四、算法阅读题

主观题不参与评分,请参考答案自行评分。

30
阅读下列关于单链表L的算法,并回答问题:
题目图片
(1)指出fun(L)算法的功能。
(2)当L=(1,2,3,4,5,6,7,8,9)时,执行fun(L)后L的结果是什么?
31
阅读下列算法,并回答问题:
题目图片
(1)指出算法fun的功能。
(2)若a[0⋯7]={1,2,3,4,5,6,7,8},执行fun(a,8)后数组a的结果是什么?
32
阅读下列算法(顺序栈的元素类型为ElemType),并回答问题:
题目图片
(1)写出算法的执行步骤。
(2)指出算法的功能。
33
阅读下列关于排序的算法,并回答问题:
题目图片
题目图片
(1)指出fun(a,n)算法的功能。
(2)当a[]={5,1,3,6,2,7,4,8}时,fun(a,8)共执行几趟排序?各趟的排序结果是什么?

五、算法设计题

主观题不参与评分,请参考答案自行评分。

34
假设无向图采用邻接表存储,设计一个算法,以深度优先搜索来求连通分量的个数并输出各连通分量的顶点集。