数据结构=模拟试题1
数据结构模拟试题1

一、填空题(共20分,每空1分)。
1.数据结构是研究数据元素之间抽象化的相互关系和这种关系在计算机中的存储结构表示,通常有下列四种存储结构:(1)、(2)、(3)和(4)。
2.评价算法的标准很多,通常是以执行算法所需要的(5)和所占用的(6)来判别一个算法的优劣。
3.队列操作的原则是(7),栈的插入和删除操作在(8)进行。
4.对循环队列Q,它的最大存储空间是MAXSIZE,队头指针是front,队尾指针是rear,采用少用一个存储单元的方法解决假溢出时,队满的判断条件是(9),队空的判断条件是(10)。
5.在以head 为表头指针的带有头结点的单链表和循环单链表中,判断链表为空的条件分别为(11)和(12)。
6.假设二维数组A[6][8],每个元素用相邻的4个字节存储,存储器按字节编址,已知A[0][0]的存储位置为100,按行优先顺序存储的元素A[2][5]的第一个字节的地址为(13)。
7.空格串的长度为串中所包含(14)字符的个数,空串的长度为(15)。
8.有向图G 用邻接矩阵A[n][n] 存储表示,其第i 行的所有元素之和等于顶点i 的(16)。
9.在关键字序列(12 ,23 ,34 ,45 ,56 ,67 ,78 ,89 ,91) 中折半查找关键字为89和25的结点时,所需进行的比较次数分别为(17)和(18)。
10.请说出两种处理哈希冲突的方法(19)、_(20)_。
二、选择题(共20分,每题2分)。
1.对线性表,在下列哪种情况下应采用链式存储结构?()A.经常需要随机存取元素B.经常需要进行插入和删除操作C.表中元素的个数不变D.表中元素需要占据一片连续的存储空间2.从一个具有n个结点的单链表中查找其值等于x结点时,在查找成功情况下,则平均比较()个结点。
A.nB.n/2C.(n-1)/2D.(n+1)/23.若对某线性表最常进行的操作是在最后一个元素之后插入和删除第一个元素,则采用()存储方式最节省运算时间。
数据结构模拟试题(1)

(1)
(2)
(3)
(4)
参考答案:
(0) [30 18 20 15 38 12 44 53 46 18* 26 86]
(1) [18 30][15 20][12 38][44 53][18* 46][26 86]
(2) [15 18 20 30][12 38 44 53][18* 26 46 86]
A:n-I B:n-I+1
C:n-i-1 D:I
7、 不带头结点的单链表first为空的判定条件是( )。
A:first == NULL; B:first->link == NULL;
C:first->link == first; D:D. first != NULL;
8、 树中所有结点的度之和等于所有结点数加( )。
A:0 B:1
C:-1 D:2
9、 一棵具有35个结点的完全二叉树的高度为( )。假定空树的高度为 -1。
A:5 B:6
C:7 D:8
数据结构模拟试题(1)
一、填空题:06分,每题02分
1、 从一个具有n个结点的单链表中搜索其值等于x的结点时, 在搜索成功的情况下, 需平均比较_______次。
2、 根据一组记录(56,42,50,64,48)依次插入结点生成一棵AVL树时,当插入到值为_______的结点时需要进行旋转调整。
31、 已知一个数据表为{48,25,56,32,40},请写出在进行快速排序的过程中每次划分后数据表的变化。
(0) [48 25 56 32 40]
(1)
(2)
(3)
参考答案:
(0) [48 25 56 32 40]
数据结构模拟测验题

数据结构模拟试卷一一、单选题(每小题2分,共20分)1. 在数据结构的讨论中把数据结构从逻辑上分为()。
A.内部结构与外部结构 B. 静态结构与动态结构 C. 线性结构与非线性结构 D. 紧凑结构与非紧凑结构2. 采用线性链表表示一个向量时,要求占用的存储空间地址()。
A. 必须是连续的B. 部分地址必须是连续的C. 一定是不连续的D. 可连续可不连续3. 采用顺序搜索方法查找长度为n的顺序表时,搜索成功的平均搜索长度为()。
A. nB. n/2C. (n-1)/2D. (n+1)/24. 在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行()。
A. s→link = p→link; p→link = s;B. p→link = s; s→link = q;C. p→link = s→link; s→link = p;D. q→link = s; s→link = p;5. 如果想在4092个数据中只需要选择其中最小的10个,采用()方法最好。
A.冒泡排序B. 堆排序C. 直接插入排序D. 快速排序6. 设有两个串t和p,求p在t中首次出现的位置的运算叫做()。
A. 求子串B. 模式匹配C. 串替换D. 串连接7. 在数组A中,每一个数组元素A[i][j]占用3个存储单元,行下标i从1到8,列下标j从1到10。
所有数组元素相继存放于一个连续的存储空间中,则存放该数组至少需要的存储单元是()。
A. 80B. 100C. 240D. 2708. 将一个递归算法改为对应的非递归算法时,通常需要使用()。
A. 栈B. 队列C. 循环队列D. 优先队列9. 一个队列的进队列顺序是1, 2, 3, 4,则出队列顺序为()。
A. 4, 3, 2, 1B. 2, 4, 3, 1C. 1, 2, 3, 4D. 3, 2, 1, 410. 在循环队列中用数组A[0..m-1] 存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是()。
数据结构模拟试卷及参考答案

数据结构模拟试卷及参考答案一、简答题(共10题,每题10分,共计100分)1. 什么是数据结构?请简要解释。
数据结构是计算机中用于组织和存储数据的方式,它包含了一系列的数据元素,以及这些数据元素之间的关系和操作。
通过使用不同的数据结构,可以更高效地存储、查找和操作数据。
2. 请解释什么是栈,并给出一个栈的应用场景。
栈是一种具有特定操作限制的数据结构,它遵循"先进后出"(LIFO)的原则。
栈的应用场景包括函数调用、表达式求值、撤销操作以及浏览器中的历史记录。
3. 什么是队列?请给出一个队列的实际应用例子。
队列是一种具有特定操作限制的数据结构,它遵循"先进先出"(FIFO)的原则。
一个实际应用例子是操作系统的进程调度,进程按照到达时间加入队列,并按照一定规则出队执行。
4. 请解释什么是链表,并给出一个链表的优点和缺点。
链表是一种动态数据结构,它由一系列节点构成,每个节点包含数据和指向下一个节点的指针。
链表的优点是可以动态地分配内存空间,且插入和删除节点的时间复杂度为O(1)。
缺点是访问链表某个具体节点的时间复杂度为O(n),且需要额外的内存空间存储指针。
5. 请解释什么是树,并给出一个树的实际应用例子。
树是一种分层次的数据结构,它由一系列节点和节点之间的关系构成。
一个实际应用例子是文件系统的目录结构,文件和文件夹通过树的结构进行组织和存储。
6. 请解释什么是图,并给出一个图的实际应用例子。
图是一种由节点和节点之间的连接关系组成的数据结构。
一个实际应用例子是社交网络,人与人之间的关系可以用图来表示,每个人是一个节点,节点之间的连接表示关系。
7. 请解释什么是散列(哈希)表,以及它的优势和劣势。
散列表是一种根据关键字直接访问的数据结构,它通过将关键字映射到表中的位置来实现快速的查找操作。
散列表的优势是查找操作的平均时间复杂度为O(1)。
劣势是如果存在多个关键字映射到同一个位置,就会发生冲突,需要解决冲突问题。
数据结构模拟试题一及答案

数据结构模拟试题一一、判断题(每小题1 分,共15分)1.计算机程序处理的对象可分为数据和非数据两大类。
2.全体自然数按大小关系排成的序列是一个线性表。
3.在描述单向链表的结点类型时,必须首先描述数值字段,然后再描述指针字段。
4.顺序栈是一种规定了存储方法的栈。
5.树形结构中的每个结点都有一个前驱。
6.在任何一棵完全二叉树中,最多只有一个度为1的分支结点。
7.若某顶点是有向图的根,则该顶点的入度一定是零。
8.如果某图的邻接矩阵有全零的行,没有全零的列,则该图一定是有向图。
9.用一维数组表示矩阵可以节省存储空间。
10.广义表的长度与广义表中含有多少个原子元素有关。
11.分块查找的效率与线性表被分成多少块有关。
12.散列表的负载因子等于存入散列表中的结点个数。
13.在起泡排序过程中,某些元素可能会向相反的方向移动。
14.按某种逻辑关系组织起来的记录的集合称为逻辑记录。
15.索引非顺序文件的特点是索引表中的索引项不一定按关键字大小有序排列。
二、填空题(每空1分,共15分)1.顺序表是一种_____________线性表。
2.若用Q[1]~Q[m]作为非循环顺序队列的存储空间,则对该队列最多只能执行___次插入操作。
3.栈和队列的区别在于________的不同。
4.在高度为h(h≥0)的二叉树中至少有___个结点,至多有___个结点。
5.若用二叉链表来存储具有m个叶子,n个分支结点的树,则二叉链表中有___个左指针域为空的结点,有___个右指针域为空的结点。
6.n个顶点的有根有向图中至少有___条边,至多有___条边。
7.10行20列矩阵若用行优先顺序表来表示,则矩阵中第8行第7列元素是顺序表中第___个元素。
8.在各元素查找概率相等的情况下,用顺序查找方法从含有12个元素的有序表中查找一个元素,元素间的平均比较次数是_____。
9.在归并两个长度为m的有序表时,排序码的比较次数至少是___次,至多是___次。
十套数据结构模拟题+答案

数据结构试卷(一)一、选择题(20分)1.组成数据的基本单位是()。
(A) 数据项(B) 数据类型(C) 数据元素(D) 数据变量2.设数据结构A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构A是()。
(A) 线性结构(B) 树型结构(C) 图型结构(D) 集合3.数组的逻辑结构不同于下列()的逻辑结构。
(A) 线性表(B) 栈(C) 队列(D) 树4.二叉树中第i(i≥1)层上的结点数最多有()个。
(A) 2i (B) 2i(C) 2i-1(D) 2i-15.设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为()。
(A) p->next=p->next->next (B) p=p->next(C) p=p->next->next (D) p->next=p6.设栈S和队列Q的初始状态为空,元素E1、E2、E3、E4、E5和E6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S的容量至少应该是()。
(A) 6 (B) 4 (C) 3 (D) 27.将10阶对称矩阵压缩存储到一维数组A中,则数组A的长度最少为()。
(A) 100 (B) 40 (C) 55 (D) 808.设结点A有3个兄弟结点且结点B为结点A的双亲结点,则结点B的度数数为()。
(A) 3 (B) 4 (C) 5 (D) 19.根据二叉树的定义可知二叉树共有()种不同的形态。
(A) 4 (B) 5 (C) 6 (D) 710.设有以下四种排序方法,则()的空间复杂度最大。
(A) 冒泡排序(B) 快速排序(C) 堆排序(D) 希尔排序二、填空题(30分)1.设顺序循环队列Q[0:m-1]的队头指针和队尾指针分别为F和R,其中队头指针F指向当前队头元素的前一个位置,队尾指针R指向当前队尾元素所在的位置,则出队列的语句为F =____________;。
数据结构模拟1--带答案

数据结构模拟题1一、判断题。
判断下列各题是否正确,若正确,在答题卡中涂“A”,否则涂“B”。
1.数据的存储结构也称为物理结构,指数据的逻辑结构在计算机中的映象,它包括数据元素的映象和数据元素关系的映象。
√2.在线性表的顺序存储结构中,逻辑上相邻的两个元素在物理位置上不一定相邻。
Χ3.在顺序表中,插入和删除时移动元素的个数与该元素的位置有关。
√4.链表的每个结点中都恰好包含一个指针。
Χ5.链表只能借助于指针和动态变量来实现。
Χ6.对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表。
√7.若一个队列入队的次序为1234,则出队的次序也一定是1234。
√8.若一棵二叉树的任意一个非叶子结点的度都为2,则该二叉树是满的。
Χ9.二叉树中所有结点个数是2k-1-1,其中k是树的深度。
Χ10.用二叉链表法存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。
√11.满二叉树不一定是完全二叉树。
Χ12.使用递归也可以实现二叉树的先序、中序和后序遍历。
√13.对二叉排序树进行中序遍历得到的序列是由大到小的。
14.哈夫曼树是带权路径长度最小的二叉树,路径上权值较大的结点离根较近。
√15.邻接表存储结构只用于有向图的存储,邻接矩阵对有向图和无向图的存储都适用。
Χ二、单选题。
1.数据的最小单位是【】。
AA、数据项B、数据类型C、数据元素D、数据变量2.从逻辑上可以把数据结构分为【】两大类。
CA、动态结构、静态结构B、顺序结构、链式结构C、线性结构、非线性结构D、初等结构、构造型结构3.【】不是要关注程序的时间复杂性的原因。
BA、确定程序运行时间的上限B、判断一个计算机系统是否有足够的内存来运行该程序C、正在开发的程序可能需要提供一个满意的实时响应D、在多种可选的方案中决定采用哪一个4.【】是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性数据结构。
CA、线性表B、栈C、队列D、树5.设指针变量p指向单链表中结点A,若删除单链表中结点A,则需要修改指针的操作序列为【】。
2023年数据结构模拟考试及答案

数据结构模拟考试(总分100分,考试时长90分钟)一、单项选择题(每小题2 分,共 100分)1、一棵具有 n 个结点的完全二叉树的树高度(深度)是( A )A、「log2n」+1B、log2n+1C、「log2n」D、log2n-12、若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为A、O(n)B、O(0)C、O(1)D、O(n^2)3、一个顺序栈S,空栈时top的初始值为0,其栈顶指针为top,则将元素e入栈的操作是( )。
A、*S->top=e;S->top++;B、S->top++;*S->top=e;C、*S->top=eD、S->top=e;4、下列几种排序方法中要求辅助空间最大的是( )A、堆排序B、直接选择排序C、归并排序D、快速排序5、给定排序码值序列为{F,B,J,C,E,A,I,D,C,H},对其按字母的字典序列的次序进行排列,冒泡排序(大数下沉)的第一趟排序结果应为A、{B,F,C,J,A,E,D,I,C,H}B、{C,B,D,A,E,F,I,C,J,H}C、{B,F,C,E,A,I,D,C,H,J}D、{A,B,D,C,E,F,I,J,C,H}6、对含有 10 个数据元素的有序查找表执行折半查找,当查找失败时,至少需要比较( )次。
A、2B、3C、4D、57、数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素个数的公式为()。
A、r-fB、(n+f-r)%nC、n+r-fD、(n+r-f)%n8、若长度为 n 的线性表采用顺序存储结构,访问其第 i 个元素的算法时间复杂度为()A、0 ( 1 )B、0 ( n )C、0 ( n2 )D、0 ( log2n )9、(6分)若希望1000个无序元素中尽快求得前10个最大元素,应借用(A)。
数据结构模拟练习题1 参考答案

数据结构模拟练习题1 参考答案一、单项选择题(每小题2分,共30分)1、算法的计算量的大小称为计算的( B )。
A.效率 B. 复杂性 C. 现实性 D. 难度2、静态链表中指针表示的是(B)A.内存地址 B.数组下标 C.下一元素地址 D.左、右孩子地址3、对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为(C)A.O(n) O(n) B. O(n) O(1) C. O(1) O(n) D. O(1) O(1)4、在单链表指针为p的结点之后插入指针为s的结点,正确的操作是:(D )。
A.p->next=s;s->next=p->next; B.p->next=s->next;p->next=s;C.p->next=s;p->next=s->next; D. s->next=p->next;p->next=s;5、设有一顺序栈S,元素s1,s2,s3,s4,s5,s6依次进栈,如果6个元素出栈的顺序是s2,s3,s4, s6 , s5,s1,则栈的容量至少应该是( B )A.2B. 3C. 5D.66、串是一种特殊的线性表,其特殊性体现在(B)。
A.可以顺序存储 B.数据元素是一个字符C.可以链接存储 D.数据元素可以是多个字符7、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( D )。
A.9 B.11 C.15 D.不确定8、列说法中正确的是( A )。
A.任何一棵二叉树中至少有一个结点的度为2B.任何一棵二叉树中每个结点的度都为2C.任何一棵二叉树中的度肯定等于2D.任何一棵二叉树中的度可以小于29、已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为( B )。
A.CBEFDA B. FEDCBA C. CBEDFA D.不定10、下列哪一种图的邻接矩阵是对称矩阵( B )。
数据结构模考试题及答案

数据结构模考试题及答案一、单选题(共100题,每题1分,共100分)1、下面关于生成树的描述中,不正确的是( )A、生成树是树的一种表现形式B、生成树一定是连通的C、生成树一定不含有环D、若生成树顶点个数为n,则其边数一定为n-1正确答案:A2、用邻接表表示图进行广度优先遍历时,通常是采用()来实现算法的。
A、图B、栈C、队列D、树正确答案:C3、下列四种基本的逻辑结构中,结构结点间不存在任何逻辑联系的是()A、集合B、树形结构C、图形结构D、线性结构正确答案:A4、以下数据结构中,哪一个是线性结构()。
A、线索二叉树B、二叉树C、有向图D、串正确答案:D5、n个顶点的连通图至少中含有( )边。
A、n-1B、n+1C、nD、0正确答案:A6、G是一个非连通无向图,共有28条边,则该图至少有( )个顶点。
A、7B、8C、6D、9正确答案:D7、在一个链队列中,假定front和rear分别为队首和队尾指针,则删除一个结点的操作为()。
A、rear=front->nextB、front=rear->nextC、front=front->nextD、rear=rear->next正确答案:C8、一个栈的输入序列是 1 2 3 4 5,则下列序列中是栈的输出序列的是()。
A、1,4,2,5,3B、3,1,2,4,5C、2,3,4,1,5D、5,4,1,3,2正确答案:C9、假设以数组A[m]存放循环队列的元素。
已知队列的长度为length,指针rear指向队尾元素的下一个存储位置,则队头元素所在的存储位置为( )A、(rear-length+m+1)%mB、(rear-length+m)%mC、(rear-length+m-1)%mD、(rear-length)%m正确答案:B10、与数据元素本身的形式、内容、相对位置、个数无关的是数据的()。
A、存储结构B、操作C、逻辑结构D、算法正确答案:C11、深度为k的完全二叉树中最少有()个结点。
数据结构试题及答案

数据结构试题及答案试题一:线性表题目:以下关于线性表的叙述中,错误的是()A. 线性表是一种基本的数据结构,它是由n个数据元素组成的有限序列B. 线性表中的数据元素可以是基本数据类型,也可以是复合数据类型C. 线性表中的数据元素是有序的,即元素之间的顺序是固定的D. 线性表的长度可以是零,也可以是任意正整数答案:D解析:线性表的长度可以是零,也可以是任意非负整数。
当线性表的长度为零时,称为空表。
---试题二:栈和队列题目:以下关于栈和队列的叙述中,正确的是()A. 栈是一种先进先出(FIFO)的数据结构B. 队列是一种先进后出(LIFO)的数据结构C. 栈的插入和删除操作都是在栈顶进行的D. 队列的插入操作在队尾进行,删除操作在队头进行答案:CD解析:栈是一种先进后出(LIFO)的数据结构,而队列是一种先进先出(FIFO)的数据结构。
栈的插入和删除操作都是在栈顶进行的,而队列的插入操作在队尾进行,删除操作在队头进行。
---试题三:链表题目:以下关于链表的叙述中,错误的是()A. 链表是一种动态的数据结构,其大小可以在运行时改变B. 链表中的元素可以是不连续存储的C. 链表的每个节点至少包含两个部分:一个是存储元素的数据域,另一个是存储下一个节点地址的指针域D. 链表的最后一个节点的指针域通常设置为NULL答案:A解析:链表确实是一种动态的数据结构,其大小可以在运行时改变。
但是,链表的大小并不是可以无限增加的,它受到系统内存大小的限制。
---试题四:树和二叉树题目:以下关于树和二叉树的叙述中,正确的是()A. 树是一种非线性的层次结构的数据结构B. 二叉树是一种特殊的树,每个节点最多有两个子节点C. 在二叉树中,节点的度是指节点的子节点数D. 二叉树的节点个数n与边数e之间的关系是 n = e + 1答案:ABCD解析:树是一种非线性的层次结构的数据结构,每个节点可以有零个或多个子节点。
二叉树是一种特殊的树,每个节点最多有两个子节点,通常称为左子节点和右子节点。
数据结构模拟试题及答案

数据结构模拟试题一一、判定题(每题1 分,共15分)1.运算机程序处置的对象可分为数据和非数据两大类。
2.全部自然数按大小关系排成的序列是一个线性表。
3.在描述单向链表的结点类型时,必需第一描述数值字段,然后再描述指针字段。
4.顺序栈是一种规定了存储方式的栈。
5.树形结构中的每一个结点都有一个前驱。
6.在任何一棵完全二叉树中,最多只有一个度为1的分支结点。
7.假设某极点是有向图的根,那么该极点的入度必然是零。
8.若是某图的邻接矩阵有全零的行,没有全零的列,那么该图必然是有向图。
9.用一维数组表示矩阵能够节省存储空间。
10.广义表的长度与广义表中含有多少个原子元素有关。
11.分块查找的效率与线性表被分成多少块有关。
12.散列表的负载因子等于存入散列表中的结点个数。
13.在起泡排序进程中,某些元素可能会向相反的方向移动。
14.按某种逻辑关系组织起来的记录的集合称为逻辑记录。
15.索引非顺序文件的特点是索引表中的索引项不必然按关键字大小有序排列。
二、填空题(每空1分,共15分)1.顺序表是一种_____________线性表。
2.假设用Q[1]~Q[m]作为非循环顺序队列的存储空间,那么对该队列最多只能执行___次插入操作。
3.栈和队列的区别在于________的不同。
4.在高度为h(h≥0)的二叉树中至少有___个结点,最多有___个结点。
5.假设用二叉链表来存储具有m个叶子,n个分支结点的树,那么二叉链表中有___个左指针域为空的结点,有___个右指针域为空的结点。
6.n个极点的有根有向图中至少有___条边,最多有___条边。
7.10行20列矩阵假设用行优先顺序表来表示,那么矩阵中第8行第7列元素是顺序表中第___个元素。
8.在各元素查找概率相等的情形下,用顺序查找方式从含有12个元素的有序表中查找一个元素,元素间的平均比较次数是_____。
9.在归并两个长度为m的有序表时,排序码的比较次数至少是___次,最多是___次。
十套数据结构试题及答案(1)

数据结构试卷(一)一、单选题(每题2 分,共20分)1.栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素B。
都是先进后出C。
都是先进先出D。
没有共同点2.用链接方式存储的队列,在进行插入运算时( )。
A. 仅修改头指针 B。
头、尾指针都要修改C. 仅修改尾指针 D。
头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?()A. 队列B。
栈 C. 线性表 D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
A.688 B.678 C.692 D.6965.树最适合用来表示( ).A.有序数据元素B.无序数据元素C。
元素之间具有分支层次关系的数据D。
元素之间无联系的数据6.二叉树的第k层的结点数最多为( ).A.2k—1 B.2K+1 C.2K—1 D。
2k—17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为A。
O(1)B。
O(n) C. O(1og2n) D。
O(n2)9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有()条边才能确保是一个连通图.A。
5 B.6 C.7 D。
8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:_________、_________、_________和_________。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________.3.假定一棵树的广义表表示为A(C,D(E,F,G),H(I,J)),则树中所含的结点数为__________个,树的深度为___________,树的度为_________。
精品数据结构模拟题

for ( int i=0; i<10; i++)
cout<<B[i]<<” “;
cout<<endl;
}
调用该算法后,输出结果为:
五、算法填空,在画有横线的地方填写合适的内容(10分)。
利用单链表进行数据排序。
void LinkSort (ElemType a[ ],int n)
2、从一维数组a[n]中顺序查找出一个最大值元素的时间复杂度为________,输出一个二维数组b[m][n]中所有元素值的时间复杂度为________。
3、在归并排序中,进行每趟归并的时间复杂度为________,整个排序过程的时间复杂度为________,空间复杂度为________。
4、在一棵m阶B_树上,每个非树根结点的关键字数目最少为________个,最多为________个,其子树数目最少为________,最多为________。
5、当从一个小根堆中删除一个元素时,需要把________元素填补到________位置,然后再按条件把它逐层________调整。
6、快速排序在平均情况下的时间复杂度为________,在最坏情况下的时间复杂度为________。
7、从一棵二叉搜索树中查找一个元素时,若元素的值等于根结点的值,则表明_______,若元素的值小于根结点的值,则继续向________查找,若元素的大于根结点的值,则继续向________查找。
2、对以下图,试给出一种拓扑序列,若在它的邻接表存储结构中,每个顶点邻接表中的边结点都是按照终点序号从大到小链接的,则按此给出唯一一种拓扑序列。
四、阅读算法,回答问题(每小题5分,共20分)
数据结构模拟试题(含答案)

数据结构模拟试题(含答案)一、单选题(共100题,每题1分,共100分)1、在一棵度为3的树中,度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为()个。
A、5B、6C、7D、4正确答案:B2、假设在一棵二叉树中,双分支结点数为15,单分支结点数为30个,则叶子结点数为()个。
A、15B、47C、16D、17正确答案:C3、设某哈夫曼树中有199个结点,则该哈夫曼树中有()个叶子结点。
A、100B、99C、102D、101正确答案:A4、一棵含18个结点的二叉树的高度至少为( )A、5B、4C、6D、3正确答案:A5、有关栈的描述,正确的是()A、栈是一种先进先出的特殊的线性表B、只能从栈顶执行插入、删除操作C、只能从栈顶执行插入、栈底执行删除D、栈顶和栈底均可执行插入、删除操作正确答案:B6、若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的()A、中序遍历算法B、前序遍历算法C、后序遍历算法D、层次遍历算法正确答案:A7、若要在单链表中的结点*p之后插入一个结点*s,则应执行的语句是( ) typedef struct node { char data[8]; struct node *next; } LinkStrNode;A、s->next=p; p->next=s->next;B、s->next=p->next; p->next=s;C、p->next=s->next; s->next=p;D、p->next=s; s->next=p->next;正确答案:B8、在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为( )。
A、O(n)B、O(1)C、O(n2)D、O(n/2)正确答案:A9、执行一趟快速排序能够得到的序列是()。
A、[45,34,12,41] 55 [72,63,27]B、[63,12,34,45,27] 55 [41,72]C、[12,27,45,41] 55 [34,63,72]D、[41,12,34,45,27] 55 [72,63]正确答案:D10、带权有向图G用邻接矩阵A存储,则顶点i 的入度等于A中()。
数据结构模拟试题附答案

数据结构试卷(1)一、选择题(30分)1.设一组权值集合W={2,3,4,5,6},则由该权值集合构造的哈夫曼树中带权路径长度之和为()。
(A) 20 (B) 30 (C) 40 (D) 452.执行一趟快速排序能够得到的序列是()。
(A) [41,12,34,45,27] 55 [72,63](B) [45,34,12,41] 55 [72,63,27](C) [63,12,34,45,27] 55 [41,72](D) [12,27,45,41] 55 [34,63,72]3.设一条单链表的头指针变量为head且该链表没有头结点,则其判空条件是()。
(A) head==0 (B) head->next==0(C) head->next==head (D) head!=04.时间复杂度不受数据初始状态影响而恒为O(nlog2n)的是()。
(A) 堆排序(B) 冒泡排序(C) 希尔排序(D) 快速排序5.设二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树满足的条件是()。
(A) 空或只有一个结点(B) 高度等于其结点数(C) 任一结点无左孩子(D) 任一结点无右孩子6.一趟排序结束后不一定能够选出一个元素放在其最终位置上的是()。
(A) 堆排序(B) 冒泡排序(C) 快速排序(D) 希尔排序7.设某棵三叉树中有40个结点,则该三叉树的最小高度为()。
(A) 3 (B) 4 (C) 5 (D) 68.顺序查找不论在顺序线性表中还是在链式线性表中的时间复杂度为()。
(A) O(n) (B) O(n2) (C) O(n1/2) (D) O(1og2n)9.二路归并排序的时间复杂度为()。
(A) O(n) (B) O(n2) (C) O(nlog2n) (D) O(1og2n)10. 深度为k的完全二叉树中最少有()个结点。
(A) 2k-1-1 (B) 2k-1(C) 2k-1+1 (D) 2k-111.设指针变量front表示链式队列的队头指针,指针变量rear表示链式队列的队尾指针,指针变量s指向将要入队列的结点X,则入队列的操作序列为()。
数据结构模拟试题

设内存有大小为6个记录的缓冲区供内排序使用,文件的关键字序列为{29,50,70,33,38,60,28,31,43,36,25,9,80,100,57,18,65,2,78,30,14,20,17,99),试列出:
(1)用内排序求出初始归并段;
(2)用置换一选择排序求初始归并段。
六、(本题8分)
对于序列{8,18,6,16,29,28},试写出堆顶元素最小的初始堆。
七、(本题8分)
一棵二叉树的先序、中序和后序序列分别如下,其中有一部分未显示出来。试求出空格处的内容,并画出该二叉树。
先序序列:BFICEHG
中序序列:DKFIAEJC
后序序列:KFBHJGA
八、(每小题2分,共8分)
(3)( )不是队列的基本运算。
设有一个输入数据的序列是{46, 25, 78, 62, 12, 80 },试画出从空树起,逐个输入各个数据而生成的二叉搜索树。
九、(本题9分)
试画出表达式(a+b/c)*(d-e*f)的二叉树表示,并写出此表达式的波兰式表示,中缀表示及逆波兰式表示。
十、(本题15分)
以二叉链表作存储结构,试编写计算二叉树中叶子结点数目的递归算法。
模拟试题(三)
一、单项选择题(每小题2分,共20分)
(1)对一个算法的评价,不包括如下( )方面的内容。
A)健壮性和可读性B)并行性C)正确性D)时空复杂度
(2)在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( )。
A)p->next=HL->next; HL->next=pB)p->next=HL; HL=p
A)14B)5C)6D)8
数据结构模拟习题1 及其答案

模拟试题1一、选择题(20分)1. 组成数据的基本单位是( )。
(A) 数据项(B)数据类型(C)数据元素(D)数据变量2. 线性表的链接实现有利于( )运算。
(A) 插入(B)读表元(C)查找(D)定位3. 串的逻辑结构与( )的逻辑结构不同。
(A) 线性表(B)栈(C)队列(D)树4. 二叉树第i(i≥1)层最多有( )个结点。
(A) 2i(B)2i (C) 2i-1(D) 2i-15. 设单链表中p指向结点A,若要删除A后结点(若存在),则需要修改p的操作为( )(A) p.Next = p.Next.Next (B)p=p.Next(C)p=p.Next.Next (D)p.Next=p6. 设一数列的输入顺序为1,2,3,4,5,6,通过栈操作不可能排成的输出序列为( )(A) 3,2,5,6,4,1 (B) 1,5,4,6,2,3(C) 2,4,3,5,1,6 (D) 4,5,3,6,2,17. 设字符串S1=’ABCDEFG’,S2=’PQRST’,则运算S=CONCA T(SUB(S1,2,LENGTH(S2)),SUB(S1,LENGTH(S2),2))的结果为( )(A) ‘BCQR’(B) ‘BCDEF’(C) ’BCDEFG’(D) ‘BCDEFEF’8. 有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占1个地址空间,则a85地址为( )(A)13 (B) 33 (C) 18 (D) 409. 如果结点A有3个兄弟,而且B为A的双亲,则B的度为( )(A) 3 (B) 4 (C) 5 (D) 110. 线索化二叉树中某结点D没有左孩子的必要条件是( )(A) D.Lchild=null (B) D.ltag=1(C) D.Rchild=null (D) D.ltag=0二、填空题(20分)1. 对于一个以顺序实现的循环队列Q[0..m_1],队头、队尾指针分别为f,r,其判空的条件是,判满的条件是。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
要求:算法描述用C 语言,对算法中用到的数据结构要加以说明描述。
一、解答下列各题(60分,每小题 10 分)
1.
已知下图为广义表的存储结构图,写出该图表示的广义表,并求该广义表的长度和深度。
list
2.试列出下图中全部可能的拓扑排序序列。
3. 已知一棵3阶B-树如图所示,画出插入关键字33,97后得到的B-树。
4. 对下列数据表,写出采用希尔排序算法的每一趟排序结果。
(100,12,20,31,1,5,44,66,61,200,30,80,150,4,8)设增量序列为:d={5,3,1}
5. 假设一棵二叉树的层次序列为ABCDEFGHIJ ,中序序列为DBGEHJACIF ,请画出这棵二叉树。
6.设有一组关键字{1,13,12,34,38,33,27,22},采用哈希函数:H(key)=key MOD 11,表长为0..10。
用线性探测再散列法来构造散列表。
二、(10分)证明若二叉排序树中的一个节点存在两个孩子,则它的中序后继节点没有左孩子,且它的中序前趋节点没有右孩子。
三、(15分)假设称正读和反读都相同的字符序列为“回文”,例如,‘abcba ’是回文,‘abcde ’和‘ababab ’则不是回文。
试写一个算法判别读入的一个以‘@’为结束符的字符序列是否是“回文”。
四、(15分)设有向图以邻接矩阵adj 表示,每个顶点的入度用数组nodein 存储,已知adj 和nodein 。
请写出对该图进行拓扑排序的算法。
35 41 48 57 43
26
55 60 16 x
1 2 3 4 5 6
66 88。