(完整版)数据结构(c语言版)期末考试复习试题

合集下载

数据结构C语言期末考试试题附带复习资料

数据结构C语言期末考试试题附带复习资料

“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。

A. HL=ps p一>next=HLB. p一>next=HL;HL=p3C. p一>next=Hl;p=HL;D. p一>next=HL一>next;HL一>next=p;2.n个顶点的强连通图中至少含有( )。

A.n—l条有向边B.n条有向边C.n(n—1)/2条有向边D.n(n一1)条有向边3.从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( )。

A.O(1)B.O(n)C.O(1Ogzn)D.O(n2)4.由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( )。

A.24 B.48C. 72 D. 535.当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。

A.整形B.引用型C.指针型D.常值引用型·6.向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( )。

A.O(n) B.O(1)C.O(n2) D.O(10g2n)二、填空题(每空1分,共28分)1.数据的存储结构被分为——、——、——和——四种。

2.在广义表的存储结构中,单元素结点及表元素结点有一个域对应不同,各自分别为——域和——域。

3.——中缀表达式 3十x*(2.4/5—6)所对应的后缀表达式为————。

4.在一棵高度为h的3叉树中,最多含有——结点。

5.假定一棵二叉树的结点数为18,则它的最小深度为——,最大深度为——· 6.在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定——该结点的值,右子树上所有结点的值一定——该结点的值。

7.当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层——调整,直到被调整到——位置为止。

数据结构c语言期末考试题及答案

数据结构c语言期末考试题及答案

数据结构c语言期末考试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,线性结构和非线性结构的区别在于()。

A. 结构中元素的个数B. 结构中是否包含子结构C. 结构中元素之间是否有一对一关系D. 结构中元素之间是否有一对多关系答案:C2. 线性表的顺序存储结构和链式存储结构相比,其优点是()。

A. 存储密度高B. 存储密度低C. 插入和删除操作快D. 存储空间可以动态分配答案:A3. 在一个长度为n的顺序表中,删除第i个元素(1≤i≤n)时,需要移动的元素个数为()。

A. i-1B. n-iC. n-i+1D. n-i-1答案:B4. 栈的运算遵循()原则。

A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C5. 在二叉树的前序遍历中,访问顺序为()。

A. 根-左-右B. 左-根-右C. 左-右-根D. 右-左-根答案:A6. 哈希表的冲突解决方法中,链地址法是()。

A. 将所有元素存储在同一个存储单元B. 将所有元素存储在同一个链表中C. 将所有元素存储在同一个数组中D. 将所有元素存储在同一个链表的同一个位置答案:B7. 在图的遍历中,深度优先搜索(DFS)和广度优先搜索(BFS)的主要区别在于()。

A. 遍历的顺序不同B. 遍历的起点不同C. 遍历的路径不同D. 遍历使用的存储结构不同答案:D8. 快速排序算法的时间复杂度为()。

A. O(n)B. O(nlogn)C. O(n^2)D. O(logn)答案:B9. 归并排序算法的时间复杂度为()。

A. O(n)B. O(nlogn)C. O(n^2)D. O(logn)答案:B10. 在二叉搜索树中,查找一个元素的时间复杂度为()。

A. O(n)B. O(logn)C. O(n^2)D. O(1)答案:B二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的时间复杂度通常用______来描述。

答案:大O符号2. 线性表的两种基本操作是插入和______。

(完整版),数据结构c语言版试题大全(含答案),推荐文档

(完整版),数据结构c语言版试题大全(含答案),推荐文档

B
16C
18、逻辑结构|顺序存储结构|链式存储结构|以上都对
B
17B
19、每个结点用占一片连续的存储区域|所有结点占用一片连续的存储区域|结点的最后一个数据域是 18B
指针类型|每个结点有多少个后继,就设多少个指针域
A
19A
20、效率与采用何种存储结构有关|是根据存储结构来定义的|有算术运算和关系运算两大类|必须用 20A
31、一个有限序列,可以为空|一个有限序列,不可以为空|一个无限序列,可以为空|一个无限序列, 37A
不可以为空
A
38B
32、必须是连续的|一定是不连续的|部分地址必须是连续的|连续与否均可以
D
39B
33、可随机访问任一结点|插入删除不需要移动元素|不必事先估计存储空间|所需空间与其长度成正 40D
-3-
35、设线性表有 n 个元素,以下操作中,_______在顺序表上实现比在链表上实现效率更高。 输出第 i(1<=i<=n)个元素值|交换第 1 个元素与第 2 个元素的值|顺序输出这 n 个元素的值|输出与给定值 x 相等的元素在线性表中的序号 36、对于一个线性表,既要求能够较快地进行插入和删除,又要求存储结构能够反映数据元素之间的逻辑 关系,则应采用_______存储结构。 顺序|链式|散列|索引 37、设线性表中有 2n 个元素,以下操作中,______在单链表上实现要比在顺序表上实现效率更高。 删除指定的元素|在最后一个元素的后面插入一个新元素|顺序输出前 k 个元素|交换第 i 个元素和第 2n-i-1 个元素的值(i=0,1,…,n-1) 38、需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是______。 单链表|静态链表|线性链表|顺序存储结构 39、如果最常用其所长的操作是取第 i 个结点及其前驱,则采用______结构方式最节省时间。 单链表|双链表|单循环链表|顺序表 40、与单链表相比,双链表的优点之一是______。 插入、删除操作更简单|可以进行随机访问|可以省略表头指针或表尾指针|访问前后相邻结点更灵活 41、数据结构在计算机内存中的表示是指______. 数据的存储结构|数据结构|数据的逻辑结构|数据元素之间的关系 42、下面程序段的时间复杂度为_________. O(m)| O(n)|O(m*n)|O(m+n)

数据结构(C语言版)1800道题及答案[完整版]

数据结构(C语言版)1800道题及答案[完整版]

数据结构(C语言版)1800道题及答案[完整版]数据结构(C语言版)1800道题及答案[完整版]数据结构1800例题与答案第一章绪论一、选择题(每小题2分)1.算法的计算量的大小称为计算的(B )。

【北京邮电大学2000 二、3 (20/8分)】A.效率 B.复杂性 C.现实性 D.难度2.算法的时间复杂度取决于(C)。

【中科院计算所 1998 二、1 (2分)】A.问题的规模 B.待处理数据的初态 C.A和B D.都不是3.计算机算法指的是(① C ),它必须具备(② B )这三个特性。

① A.计算方法B.排序方法C.解决问题的步骤序列 D.调度方法② A.可执行性、可移植性、可扩充性B.可执行性、确定性、有穷性C.确定性、有穷性、稳定性 D.易读性、稳定性、安全性【南京理工大学1999 一、1(2分)【武汉交通科技大学1996 一、1(4分)】4.一个算法应该是( B )。

【中山大学 1998 二、1(2分)】A.程序 B.问题求解步骤的描述C.要满足五个基本特性 D.A和C.5.下面关于算法说法错误的是( D )【南京理工大学 2000 一、1(1.5分)】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的是(C )【南京理工大学2000 一、2 (1.5分)】(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据结构分为( C )两大类。

【武汉交通科技大学 1996 一、4(2分)】A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是(D )。

数据结构c语言版期末考试试题

数据结构c语言版期末考试试题

数据结构c语言版期末考试试题work Information Technology Company.2020YEAR《数据结构与算法》复习题一、选择题。

20.如果最常用的操作是取第i个结点及其前驱,则采用 D 存储方式最节省时间。

A.单链表 B.双链表 C.单循环链表 D.顺序表21.在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是B 。

A.O(1) B.O(n) C.O(n2) D.O(nlog2n)27.下述哪一条是顺序存储结构的优点? C 。

A插入运算方便 B可方便地用于各种逻辑结构的存储表示C存储密度大 D删除运算方便35.在单链表指针为p的结点之后插入指针为s的结点,正确的操作是s->next=p->next ;p->next=s;41.以下 B 不是队列的基本运算?A.从队尾插入一个新元素B.从队列中删除第i个元素C.判断一个队列是否为空D.读取队头元素的值47.在循环队列中,若front与rear 分别表示对头元素和队尾元素的位置,则判断循环队列空的条件是 C。

A.front==rear+1 B.rear==front+1 C.front==rear D.front==04.向一个栈顶指针为h的带头结点的链栈中插入指针s所指的结点时,应执行s->next=h->next ;h->next=s50.若栈采用顺序存储方式存储,现两栈共享空间V[1 m],top[1]、top[2]分别代表第1和第2个栈的栈顶,栈1的底在V[1],栈2的底在V[m],则栈满的条件是 B 。

A.|top[2]-top[1]|=0 B. top[1]+1=top[2] C.top[1]+top[2]=m D.top[1]=top[2] 52.允许对队列进行的操作有 D 。

A.对队列中的元素排序 B.取出最近进队的元素 C.在队头元素之前插入元素 D.删除队头元素54.若用一个大小为6的数值来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为 B 。

数据结构c语言版期末考试复习试题[1]

数据结构c语言版期末考试复习试题[1]

数据结构c语言版期末考试复习试题[1]《数据结构与算法》复习题一、选择题。

1.在数据结构中,从逻辑上可以把数据结构分为CA.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2.数据结构在计算机内存中的表示是指AA.数据的存储结构B.数据结构C.数据的逻辑结构D.数据元素之间的关系3.在数据结构中,与所使用的计算机无关的是数据的A结构。

A.逻辑B.存储C.逻辑和存储D.物理4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储C。

A.数据的处理方法B.数据元素的类型C.数据元素之间的关系D.数据的存储方法5.在决定选取何种存储结构时,一般不考虑A。

A.各结点的值如何B.结点个数的多少C.对数据有哪些运算D.所用的编程语言实现这种结构是否方便。

6.以下说法正确的是D。

A.数据项是数据的基本单位数据元素是数据的基本单位B.数据元素是数据的最小单位数据项是数据的最小单位C.数据结构是带结构的数据项的集合D.一些表面上很不相同的数据可以有相同的逻辑结构7.算法分析的目的是C,算法分析的两个主要方面是A。

(1)A.找出数据结构的合理性B.研究算法中的输入和输出的关系C.分析算法的效率以求改进D.分析算法的易读性和文档性(2)A.空间复杂度和时间复杂度B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性8.下面程序段的时间复杂度是O(n2)。

=0;for(I=0;ium=;9.下面程序段的时间复杂度是O(n某m)for(i=0;i10.下面程序段的时间复杂度是O(log3n)i=0;while(i<=n)i=i某3;11.在以下的叙述中,正确的是BA.线性表的顺序存储结构优于链表存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出桟—先进后出队—先进先出D.队列的操作方式是先进后出12.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着B。

数据结构c语言版试题大全(含答案)

数据结构c语言版试题大全(含答案)

数据结构c语言版试题大全(含答案)数据结构C语言版试题大全(含答案)第一章:基本概念与算法设计1.1 数据结构的定义与特点数据结构是指相互之间存在一种或多种特定关系的数据元素的集合,它包括了数据的存储、组织和管理方式。

数据结构的特点包括以下几个方面:- 数据元素之间存在某种关系,构成逻辑结构- 对数据元素的操作对应于对其逻辑结构的操作- 数据结构有存储结构,包括顺序存储结构和链式存储结构- 算法是对数据结构的操作步骤的描述和实现1.2 算法的基本概念算法是解决特定问题或完成特定任务的一系列操作步骤。

算法的基本概念包括以下几个方面:- 有穷性:算法必须能在有限步骤内完成- 确定性:算法的每一步骤必须有确定的含义和结果- 可行性:算法的每一步骤必须可行,能够通过执行有限次数实现- 输入:算法接受的输入数据是原始问题的实例- 输出:算法产生的输出数据与输入有明确的关系1.3 算法的描述方法算法可以用自然语言、伪代码或流程图来描述。

常用的伪代码描述方法包括结构化语言和算法描述语言,结构化语言包括顺序结构、分支结构和循环结构。

第二章:线性结构2.1 线性表的定义与基本操作线性表是n个数据元素的有限序列,其中相邻元素之间存在唯一的前驱和后继关系。

线性表的基本操作包括插入、删除、查找和修改等。

2.2 数组与广义表数组是指具有相同数据类型的一组数据元素的集合,可以通过下标访问元素。

广义表是线性表的推广,其中元素可以是基本数据类型或另一个广义表。

第三章:树与二叉树3.1 树的定义与基本术语树是n(n≥0)个结点的一个有限集合,其中满足以下条件:- 有且仅有一个特定的称为根的结点- 其余结点可分为m(m≥0)个互不相交的有限集合,每个集合本身又是一棵树3.2 二叉树的定义与性质二叉树是指每个结点最多有两个子结点的树结构。

二叉树的性质包括以下几个方面:- 深度为k的二叉树最多有2^k-1个结点- 一棵二叉树的第i层最多有2^(i-1)个结点- 在二叉树的第i层上至多有2^(n-i+1)-1个结点(n为树的深度)第四章:图4.1 图的基本概念与术语图是由顶点的有穷非空集合和边的有穷集合组成的。

数据结构c语言期末考试题库及详解答案

数据结构c语言期末考试题库及详解答案

数据结构c语言期末考试题库及详解答案数据结构C语言期末考试题库及详解答案一、选择题1. 在数据结构中,线性表的顺序存储结构被称为:A. 链式存储结构B. 栈C. 队列D. 数组答案:D2. 下列关于栈的描述,错误的是:A. 栈是一种特殊的线性表B. 栈的特点是后进先出C. 栈顶元素是最后插入的元素D. 栈的插入和删除操作都发生在栈顶答案:C二、填空题1. 在C语言中,定义一个具有10个元素的整型数组可以使用语句:________。

答案:int arr[10];2. 链表与数组相比,其优点是________。

答案:动态内存分配,不需要预先知道数据规模三、简答题1. 简述二叉树的遍历方法有哪些,并说明它们的特点。

答案:二叉树的遍历方法主要有前序遍历、中序遍历和后序遍历三种。

前序遍历首先访问根节点,然后递归地遍历左子树和右子树;中序遍历首先遍历左子树,然后访问根节点,最后遍历右子树;后序遍历首先遍历左子树和右子树,最后访问根节点。

每种遍历方法都可以用来对二叉树进行不同的操作和分析。

2. 什么是哈希表?它在实际应用中有哪些优点?答案:哈希表是一种通过哈希函数将键映射到表中一个位置来访问记录的数据结构。

它的优点包括:快速的数据访问速度,因为哈希表通常在常数时间内完成查找;动态的内存分配,可以根据需要调整存储空间;以及灵活的键值对存储方式。

四、编程题1. 编写一个C语言函数,实现单链表的逆序输出。

答案:```c#include <stdio.h>#include <stdlib.h>typedef struct Node {int data;struct Node *next;} Node;void reversePrint(Node *head) {if (head == NULL) return;reversePrint(head->next);printf("%d ", head->data);}int main() {Node *head = (Node *)malloc(sizeof(Node));head->data = 1;head->next = NULL;// 假设链表已经构建完毕reversePrint(head);return 0;}```2. 请实现一个C语言函数,用于计算一个字符串中不同字符的数量。

(完整word版)数据结构C语言版期末考试试题(有答案)

(完整word版)数据结构C语言版期末考试试题(有答案)

“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。

A. HL=ps p一>next=HLB. p一>next=HL;HL=p3C. p一>next=Hl;p=HL;D. p一>next=HL一>next;HL一>next=p;2.n个顶点的强连通图中至少含有( )。

A.n—l条有向边B.n条有向边C.n(n—1)/2条有向边D.n(n一1)条有向边3.从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( )。

A.O(1)B.O(n)C.O(1Ogzn)D.O(n2)4.由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( )。

A.24 B.48C. 72 D. 535.当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。

A.整形B.引用型C.指针型D.常值引用型·6.向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( )。

A.O(n) B.O(1)C.O(n2) D.O(10g2n)二、填空题(每空1分,共28分)1.数据的存储结构被分为——、——、——和——四种。

2.在广义表的存储结构中,单元素结点与表元素结点有一个域对应不同,各自分别为——域和——域。

3.——中缀表达式 3十x*(2.4/5—6)所对应的后缀表达式为————。

4.在一棵高度为h的3叉树中,最多含有——结点。

5.假定一棵二叉树的结点数为18,则它的最小深度为——,最大深度为——· 6.在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定——该结点的值,右子树上所有结点的值一定——该结点的值。

7.当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层——调整,直到被调整到——位置为止。

数据结构C语言总复习附带试卷及答案

数据结构C语言总复习附带试卷及答案

“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行(B)。

A. HL=ps p一>next=HLB. p一>next=HL;HL=p3C. p一>next=Hl;p=HL;D. p一>next=HL一>next;HL一>next=p;2.n个顶点的强连通图中至少含有( B )。

A.n—l条有向边B.n条有向边C.n(n—1)/2条有向边D.n(n一1)条有向边3.从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( C )。

A.O(1)B.O(n)C.O(1Ogzn)D.O(n2)4.由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( D )。

A.24 B.48C. 72 D. 535.当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( B )参数,以节省参数值的传输时间和存储参数的空间。

A.整形B.引用型C.指针型D.常值引用型·6.向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( A )。

A.O(n) B.O(1)C.O(n2) D.O(10g2n)二、填空题(每空1分,共28分)1.数据的存储结构被分为/顺序结构/链接结构/索引结构/散列结构/四种。

2.在广义表的存储结构中,单元素结点与表元素结点有一个域对应不同,各自分别为(值(或data))域和(子表指针(或sublist))域。

3.——中缀表达式 3十x*(2.4/5—6)所对应的后缀表达式为——。

3 x 2.4 5/6一*十4.在一棵高度为h的3叉树中,最多含有((3h一1)/2)结点。

5.假定一棵二叉树的结点数为18,则它的最小深度为(5),最大深度为(18)·6.在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定(小于)该结点的值,右子树上所有结点的值一定(大于(或大于等于))该结点的值。

数据结构(C语言版)复习题

数据结构(C语言版)复习题

一、单项选择题:1、树形结构不具备这样的特点:()A. 每个节点可能有多个后继(子节点)B. 每个节点可能有多个前驱(父节点)C. 可能有多个内节点(非终端结点)D. 可能有多个叶子节点(终端节点)2、二叉树与度数为2的树相同之处包括()。

A. 每个节点都有1个或2个子节点B. 至少有一个根节点C. 至少有一个度数为2的节点D. 每个节点至多只有一个父节点3、一棵完全二叉树有999 个结点,它的深度为()。

A.9 B.10 C.11 D.124、在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行()A. s->next=p;p->next=s;B. s->next=p->next;p->next=s;C. s->next=p->next;p=s;D. p->next=s;s->next=p;5、对于一棵具有n个结点、度为5的树来说,()A. 树的高度至多是n-3B. 树的高度至多是n-4C. 树的高度至多是nD. 树的高度至多是n-56、在顺序队列中,元素的排列顺序()。

A. 由元素插入队列的先后顺序决定B. 与元素值的大小有关C. 与队首指针和队尾指针的取值有关D. 与数组大小有关7、串是一种特殊的线性表,其特殊性体现在()。

A.可以顺序存储 B.数据元素是一个字符C.可以链式存储 D.数据元素可以是多个字符若8、顺序循环队列中(数组的大小为 6),队头指示 front 和队尾指示 rear 的值分别为 3和 0,当从队列中删除1个元素,再插入2 个元素后,front和 rear的值分别为()。

A.5 和1 B.2和4 C.1和5 D.4 和29、一棵完全二叉树上有1001 个结点,其中叶子结点的个数为()。

A.250 B.500 C.254 D.50110、已知一个有向图如下图所示,则从顶点a出发进行深度优先遍历,不可能得到的DFS序列为()。

数据结构c语言版期末考试试题

数据结构c语言版期末考试试题

《数据结构与算法》复习题一、选择题。

20. 如果最常用的操作是取第i个结点及英前驱,则采用D存储方式最节省时间。

A. 单链表B.双链表C.单循环链表D.顺序表21. 在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是B_o)A. O (1)B. O (n)C. O (n2)D. O (nlog2n)27. 下述哪一条是顺序存储结构的优点CA插入运算方便B可方便地用于各种逻辑结构的存储表示C存储密度大D删除运算方便35.在单链表指针为p的结点之后插入指针为s的结点,正确的操作是s->next=p->next : p->next=s;}41.以下 B 不是队列的基本运算A.从队尾插入一个新元素B.从队列中删除第i个元素C.判断一个队列是否为空D.读取队头元素的值47.在循环队列中,若front与rear分别表示对头元素和队尾元素的位置,则判断循环队列空的条件是_ .A. front==rear+lB. rear==front+lC. front==rearD. front==04.向一个栈顶指针为h的带头结点的链栈中插入指针s所指的结点时,应执行s->next=h->next ;h->next=s50.若栈采用顺序存储方式存储,现两栈共享空间V[1 m], top[l]、top[2]分别代表第1和第2个栈的栈顶,栈1的底在V[l],栈2的底在V[m],则栈满的条件是____________________ oA. |top[2]-top[l]|=0B. top[l]+l=top[2]C. top[l]+top[2]=mD. top[l]=top[2]52.允许对队列进行的操作有—。

A.对队列中的元素排序B.取岀最近进队的元素C.在队头元素之前插入元素D.删除队头元素54.若用一个大小为6的数值来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为 B °A. 1 和5B. 2 和4C. 4 和2D. 5 和 156. 和顺序栈相比,链栈有一个比较明显的优势是通常不会出现栈满的情况57. 用不带头结点的单链表存储队列,其头指针指向队头结点,尾指针指向队尾结点,则在进行出队操作时C o C.队头、队尾指针都可能要修改64.若声明一个浮点数数组如卜一:froat average[]=new float[30];假设该数组的内存起始位置为200, average[15]的内存地址是C 。

数据结构c语言版期末考试复习试题1

数据结构c语言版期末考试复习试题1

《数据结构与算法》复习题一、选择题。

1.在数据结构中,从逻辑上可以把数据结构分为 C 。

A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2.数据结构在计算机内存中的表示是指 A 。

A.数据的存储结构B.数据结构C.数据的逻辑结构D.数据元素之间的关系3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。

A.逻辑B.存储C.逻辑和存储D.物理4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C 。

A.数据的处理方法B.数据元素的类型C.数据元素之间的关系D.数据的存储方法5.在决定选取何种存储结构时,一般不考虑 A 。

A.各结点的值如何B.结点个数的多少C.对数据有哪些运算D.所用的编程语言实现这种结构是否方便。

6.以下说法正确的是 D 。

A.数据项是数据的基本单位B.数据元素是数据的最小单位C.数据结构是带结构的数据项的集合D.一些表面上很不相同的数据可以有相同的逻辑结构7.算法分析的目的是 C ,算法分析的两个主要方面是A 。

(1)A.找出数据结构的合理性B.研究算法中的输入和输出的关系C.分析算法的效率以求改进C.分析算法的易读性和文档性(2)A.空间复杂度和时间复杂度B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性8.下面程序段的时间复杂度是O(n2) 。

s =0;( I =0; i<n; )(0<)s [i][j];= s ;9.下面程序段的时间复杂度是O(n*m) 。

( i =0; i<n; )(0<)A[i][j] =0;10.下面程序段的时间复杂度是O(3n) 。

i =0;(i<)i = i * 3;11.在以下的叙述中,正确的是 B 。

A.线性表的顺序存储结构优于链表存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出12.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。

(完整word版)数据结构c语言版期末考试复习试题

(完整word版)数据结构c语言版期末考试复习试题

《数据结构与算法》复习题一、选择题。

1.在数据结构中,从逻辑上可以把数据结构分为 C 。

A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2.数据结构在计算机内存中的表示是指 A .A.数据的存储结构B.数据结构C.数据的逻辑结构D.数据元素之间的关系3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。

A.逻辑B.存储C.逻辑和存储D.物理(数据结构在计算机中的表示(映像)称为数据的物理(存储)结构)4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C 。

A.数据的处理方法B.数据元素的类型C.数据元素之间的关系D.数据的存储方法5.在决定选取何种存储结构时,一般不考虑 A 。

A.各结点的值如何B.结点个数的多少C.对数据有哪些运算D.所用的编程语言实现这种结构是否方便。

6.以下说法正确的是 D 。

A.数据项是数据的基本单位B.数据元素是数据的最小单位C.数据结构是带结构的数据项的集合D.一些表面上很不相同的数据可以有相同的逻辑结构7.算法分析的目的是 C ,算法分析的两个主要方面是 A 。

(1)A.找出数据结构的合理性B.研究算法中的输入和输出的关系C.分析算法的效率以求改进C.分析算法的易读性和文档性(2)A.空间复杂度和时间复杂度B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性8.下面程序段的时间复杂度是O(n2)。

s =0;for( I =0; i<n;i++)for(j=0;j〈n;j++)s +=B[i][j];sum = s ;9.下面程序段的时间复杂度是O(n*m) 。

for(i =0;i<n; i++)for(j=0;j〈m;j++)A[i][j]=0;10.下面程序段的时间复杂度是O(log3n) .i =0;while(i〈=n)i = i *3;11.在以下的叙述中,正确的是 B 。

A.线性表的顺序存储结构优于链表存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出12.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B .A.数据元素具有同一特点B.不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致C.每个数据元素都一样D.数据元素所包含的数据项的个数要相等13.链表不具备的特点是 A 。

完整word版数据结构C语言版期末考试试题有答案

完整word版数据结构C语言版期末考试试题有答案

the principle of simplified EIA of construction projects in the region. In terms of land, linked to the implementation of urban and rural construction land increase and decrease, replacement indicators for priority areas project. Charges, into the projects of water; electricity, administrative chargeand preferential policies. In the area of taxation, and settled in areas of industry and its production compan% within 5 years after the completion of fiscal incentives to enterprises・ In terms of financing, integration of land, tax, financial and other resources, and con struct Government credit + busi ness credit credit system, establishment of marketizatio n, commercialization and modernization of the investment and financing platform; effective Bank・enterprise docking, encourages private capital into the Park, to raise industry development fund・ 5, optimize the environment and service industries. To create policy lowlands, Highlands, integrity of service land, development land as the goal, to optimize the area under development environment・ All administrative law enforcement departments to appoint a full-time personnel stationed in areas dedicated to coordinating and solving problems associated with businesses in this sector. When there are substantial issues, sector leaders arranged to personally intervene, in-person, in-person push tangible area building a green light, easy line・ To further reduce and standardize administrative examina廿on and approval items, simplify examination and approval links, improve efficiency; according to the ・..Since the educational practice of the mass line of the party, himself seriously in the education,practical control central eight rules and opposing he four winds and practicing hree Suns, and check the spirit of Jiao Yulu, ideology, solicit opinions based on outstanding problems checked swing, careful analysis and reflection・ Will now check report is as follows: first, adherence to the party's political discipline, eight in the central provision, change the style of the basic situation of 1, in compliance with the party's political disciplines. Conscientiously abide by the party's political discipline, abide by the Constitution and the rules and regulations of the party, in the political, ideological and maintain highly consistent with the CPC Central Committee on the action, there is no violation of the party's political discipline problems. 2, in the implementation of the central authorities of the eight provisions・ Improving research, improving research methods, but there are less grass-roots units, primary first-hand an in adequate grasp of the problem, which is to be strengthened in the future・ Second, construction, strictly in accordance with the provisions to streamline and improve the quality of meetings of the Conference・ Third, streamlining file briefs, culture involves all aspects of propaganda and ideology, sometimes due to the practical needs of invention notifications, this area needs further“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行()oA. HL = ps p 一>next=HLC- p 一〉next=Hl; p=HL;D- p 一〉next=HL —〉next ;HL —〉next = p;2・n个顶点的强连通图中至少含有()oA. n—1条有向边B. n条有向边C.n(n—1) / 2条有向边D.n(n — 1)条有向边3.从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为()。

(完整word版)数据结构(C语言)

(完整word版)数据结构(C语言)

《数据结构与算法》复习题应用简答题.1.有下列几种用二元组表示的数据结构,画出它们分别对应的逻辑图形表示,并指出它们分别属于何种结构。

(1)A ={D,R},其中:D={a,b,c,d,e,f,g,h},R ={r},r ={<a,b>,<b,c>,〈c,d〉,〈d,e>,〈e,f〉,<f,g>,<g,h〉}(2)B ={D,R},其中:D={a,b,c,d,e,f,g,h},R ={r},r ={<d,b>,〈d,g〉,<d,a〉,<b,c>,<g,e>,<g,h〉,〈e,f〉}(3)C ={D,R},其中:D={1,2,3,4,5,6},R ={r},r ={(1,2),(2,3),(2,4),(3,4),(3,5),(3,6),(4,5),(4,6)}2.简述顺序表和链表存储方式的特点。

答:顺序表的优点是可以随机访问数据元素,缺点是大小固定,不利于增减结点(增减结点操作需要移动元素)。

链表的优点是采用指针方式增减结点,非常方便(只需改变指针指向,不移动结点)。

其缺点是不能进行随机访问,只能顺序访问。

另外,每个结点上增加指针域,造出额外存储空间增大.3.对链表设置头结点的作用是什么?(至少说出两条好处)答:其好处有:(1)对带头结点的链表,在表的任何结点之前插入结点或删除表中任何结点,所要做的都是修改前一个结点的指针域,因为任何元素结点都有前驱结点(若链表没有头结点,则首元素结点没有前驱结点,在其前插入结点和删除该结点时操作复杂些)。

(2)对带头结点的链表,表头指针是指向头结点的非空指针,因此空表与非空表的处理是一样的。

4.对于一个栈,给出输入项A ,B,C 。

如果输入项序列由A ,B,C 组成,试给出全部可能的输出序列。

5.设有4个元素1、2、3、4依次进栈,而栈的操作可随时进行(进出栈可任意交错进行,但要保证进栈次序不破坏1、2、3、4的相对次序),请写出所有不可能的出栈次序和所有可能的出栈次序.6.现有稀疏矩阵A 如图所示,要求画出三元组表示法和十字链表表示法:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡--000280000000910000000060000003130150220157.设4维数组的4个下标的范围分别为[-1,0],[1,2],[1,3],[-2,-1],请分别按行序和列序列出各元素。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据结构与算法》(c语言版)期末考复习题一、选择题。

1.在数据结构中,从逻辑上可以把数据结构分为 C 。

A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2.数据结构在计算机内存中的表示是指 A 。

A.数据的存储结构B.数据结构C.数据的逻辑结构D.数据元素之间的关系3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。

A.逻辑B.存储C.逻辑和存储D.物理4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C 。

A.数据的处理方法B.数据元素的类型C.数据元素之间的关系D.数据的存储方法5.在决定选取何种存储结构时,一般不考虑 A 。

A.各结点的值如何B.结点个数的多少C.对数据有哪些运算D.所用的编程语言实现这种结构是否方便。

6.以下说法正确的是 D 。

A.数据项是数据的基本单位B.数据元素是数据的最小单位C.数据结构是带结构的数据项的集合D.一些表面上很不相同的数据可以有相同的逻辑结构7.算法分析的目的是 C ,算法分析的两个主要方面是 A 。

(1)A.找出数据结构的合理性B.研究算法中的输入和输出的关系C.分析算法的效率以求改进C.分析算法的易读性和文档性(2)A.空间复杂度和时间复杂度B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性8.下面程序段的时间复杂度是O(n2) 。

s =0;for( I =0; i<n; i++)for(j=0;j<n;j++)s +=B[i][j];sum = s ;9.下面程序段的时间复杂度是O(n*m) 。

for( i =0; i<n; i++)for(j=0;j<m;j++)A[i][j] =0;10.下面程序段的时间复杂度是O(log3n) 。

i =0;while(i<=n)i = i * 3;11.在以下的叙述中,正确的是 B 。

A.线性表的顺序存储结构优于链表存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出12.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。

A.数据元素具有同一特点B.不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致C.每个数据元素都一样D.数据元素所包含的数据项的个数要相等13.链表不具备的特点是 A 。

A.可随机访问任一结点B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与其长度成正比14.不带头结点的单链表head为空的判定条件是 A 。

A.head == NULL B head->next ==NULLC.head->next ==head D head!=NULL15.带头结点的单链表head为空的判定条件是 B 。

A.head == NULL B head->next ==NULLC.head->next ==head D head!=NULL16.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用D 存储方式最节省运算时间。

A.单链表B.给出表头指针的单循环链表C.双链表D.带头结点的双循环链表17.需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是B 。

A.单链表B.静态链表C.线性链表D.顺序存储结构18.非空的循环单链表head的尾结点(由p所指向)满足 C 。

A.p->next == NULL B.p == NULLC.p->next ==head D.p == head19.在循环双链表的p所指的结点之前插入s所指结点的操作是 D 。

A.p->prior = s;s->next = p;p->prior->next = s;s->prior = p->priorB.p->prior = s;p->prior->next = s;s->next = p;s->prior = p->priorC.s->next = p;s->prior = p->prior;p->prior = s;p->prior->next = sD.s->next = p;s->prior = p->prior;p->prior->next = s;p->prior = s20.如果最常用的操作是取第i个结点及其前驱,则采用 D 存储方式最节省时间。

A.单链表B.双链表C.单循环链表D.顺序表21.在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是 B 。

A.O(1)B.O(n)C.O(n2)D.O(nlog2n)22.在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行 B 操作与链表的长度有关。

A.删除单链表中的第一个元素B.删除单链表中的最后一个元素C.在单链表第一个元素前插入一个新元素D.在单链表最后一个元素后插入一个新元素23.与单链表相比,双链表的优点之一是 D 。

A.插入、删除操作更简单B.可以进行随机访问C.可以省略表头指针或表尾指针D.顺序访问相邻结点更灵活24.如果对线性表的操作只有两种,即删除第一个元素,在最后一个元素的后面插入新元素,则最好使用 B 。

A.只有表头指针没有表尾指针的循环单链表B.只有表尾指针没有表头指针的循环单链表C.非循环双链表D.循环双链表25.在长度为n的顺序表的第i个位置上插入一个元素(1≤ i ≤n+1),元素的移动次数为: A 。

A.n – i + 1 B.n – i C.i D.i – 126.对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为C 。

A.顺序表B.用头指针表示的循环单链表C.用尾指针表示的循环单链表D.单链表27.下述哪一条是顺序存储结构的优点? C 。

A插入运算方便B可方便地用于各种逻辑结构的存储表示C存储密度大D删除运算方便28.下面关于线性表的叙述中,错误的是哪一个? B 。

A线性表采用顺序存储,必须占用一片连续的存储单元B线性表采用顺序存储,便于进行插入和删除操作。

C线性表采用链式存储,不必占用一片连续的存储单元D线性表采用链式存储,便于进行插入和删除操作。

29.线性表是具有n个 B 的有限序列。

A.字符B.数据元素C.数据项D.表元素30.在n个结点的线性表的数组实现中,算法的时间复杂度是O(1)的操作是A 。

A.访问第i(1<=i<=n)个结点和求第i个结点的直接前驱(1<i<=n)B.在第i(1<=i<=n)个结点后插入一个新结点C.删除第i(1<=i<=n)个结点D.以上都不对31.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为 C 。

A.O(0) B.O(1) C.O(n) D.O(n2)32.对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为C 。

A.O(n) O(n) B.O(n) O(1) C.O(1) O(n) D.O(1) O(1)33.线性表(a1,a2, …,an)以链式方式存储,访问第i位置元素的时间复杂度为 C 。

A.O(0) B.O(1) C.O(n) D.O(n2)34.单链表中,增加一个头结点的目的是为了 C 。

A.使单链表至少有一个结点B.标识表结点中首结点的位置C.方面运算的实现D.说明单链表是线性表的链式存储35.在单链表指针为p的结点之后插入指针为s的结点,正确的操作是 B 。

A.p->next=s;s->next=p->next B.s->next=p->next ;p->next=s;C.p->next=s;p->next=s->next D.p->next=s->next;p->next=s36.线性表的顺序存储结构是一种 A 。

A.随机存取的存储结构B.顺序存取的存储结构C.索引存取的存储结构D.Hash存取的存储结构37.栈的特点是 B ,队列的特点是 A 。

A.先进先出B.先进后出38.栈和队列的共同点是 C 。

A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素D.没有共同点39.一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是 C 。

A.edcba B.decba C.dceab D.abcde40.设有一个栈,元素依次进栈的顺序为A、B、C、D、E。

下列 C 是不可能的出栈序列。

A.A,B,C,D,E B.B,C,D,E,A C.E,A,B,C,D D.E,D,C,B,A41.以下 B 不是队列的基本运算?A.从队尾插入一个新元素B.从队列中删除第i个元素C.判断一个队列是否为空D.读取队头元素的值42.若已知一个栈的进栈序列是1,2,3,,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为 C 。

A.i B.n-i C.n-i+1 D.不确定43.判定一个顺序栈st(最多元素为MaxSize)为空的条件是 B 。

A.st->top != -1 B.st->top == -1C.st->top != MaxSize D.st->top == MaxSize44.判定一个顺序栈st(最多元素为MaxSize)为满的条件是 D 。

A.st->top != -1 B.st->top == -1C.st->top != MaxSize D.st->top == MaxSize45.一个队列的入队序列是1,2,3,4,则队列的输出序列是 B 。

A.4,3,2,1 B.1,2,3,4C.1,4,3,2 D.3,2,4,146.判定一个循环队列qu(最多元素为MaxSize)为空的条件是 C 。

A.qu->rear – qu->front ==MaxSize B.qu->rear – qu->front -1==MaxSize C.qu->rear ==qu->front D.qu->rear =qu->front -147.在循环队列中,若front与rear 分别表示对头元素和队尾元素的位置,则判断循环队列空的条件是 C 。

A.front==rear+1 B.rear==front+1 C.front==rear D.front==048.向一个栈顶指针为h的带头结点的链栈中插入指针s所指的结点时,应执行D 操作。

相关文档
最新文档