数据结构Word格式文档下载.docx
- 文档编号:16591544
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:30
- 大小:192.86KB
数据结构Word格式文档下载.docx
《数据结构Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据结构Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。
26.若长度为n的非空线性表采用顺序存储结构,删除表的第i个数据元素,i的合法值应该
是(C.1≤i≤n)。
27.在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加
(2)。
28.若某线性表中最常用的操作是取第i个元素和删除最后一个元素,则采用什么存储方
式最节省时间(顺序表)。
29.一组记录的关键字为{45,80,55,40,42,85},则利用堆排序的方法建立的初始堆为(85,80,55,40,42,45)。
30.如果T2是由有序树T转换而来的二叉树,那么T中结点的先根序列就是T2中结点的(先根序列)。
31.对于一棵满二叉树,m个树叶,n个结点,深度为h,则(n=2h+1-1)。
32.具有n个顶点的有向图最多可包含的有向边的条数是(n(n-1))。
33.设有6000个无序的元素,希望用最快的速度挑选出其中前5个最大的元
素,最好选用(堆排序)法。
34.任何一个无向连通图的最小生成树(有一棵或多棵)。
35.排序方法中,从未排序序列中挑选元素,将其放入已排序序列的一端的方法,称为(选择排序)。
36.对有14个数据元素的有序表R[14]进行折半搜索,搜索到R[3]的关键码等于给定值,此时元素比较顺序依次为(R[6],R[2],R[4],R[3])。
37.因此在初始为空的队列中插入元素a,b,c,d以后,紧接着作了两次删除操作,此时的队尾元素是(d)。
38.深度为h且有多少个结点的二叉树称为满二叉树(2h+1-1)。
39.某二叉树的前序和后序序列正好相反,则该二叉树一定是的二叉树为(高度等于其结点数)。
40.带头结点的单链表head为空的判断条件是(head->
next==NULL)。
41.栈和队列的主要区别在于(插入删除运算的限定不一样)
42.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为(2h-1)。
43.在一个单链表中,若删除(*p)结点的后继结点,则执行(p->
next=p->
next->
next)。
44.在一棵具有n个结点的二叉树中,所有结点的空子树个数等于(n+1)
45.若一棵二叉树有11个度为2的结点,则该二叉树的叶结点的个数是(12)。
46.对有n个记录的表按记录键值有序建立二叉查找树,在这种情况下,其平均查找长度的量级为(O(n))。
47.有向图中,以顶点v为终点的边的数目,称为顶点v的(入度)。
48.链栈和顺序栈相比,有一个较明显的优点是(通常不会出现栈满的情况)。
49.若频繁地对线性表进行插入和删除操作,该线性表应该采用的存储结构是(链式)。
50.设一个栈的输入序列是1,2,3,4,5,则下列序列中,是栈的合法输出序列的是(32154)。
51.设森林F中有三棵树,第一、第二和第三棵的结点个数分别为m1,m2和m3,则森林F对应的二叉树根结点上的右子树上结点个数是(m2+m3)。
52.有数据{53,30,37,12,45,24,96},从空二叉树开始逐个插入数据来形成二叉查找树,若希望高度最小,则应选择下面输入序列是(37,24,12,30,53,45,96)。
53.若要在O
(1)的时间复杂度上实现两个循环链表头尾相接,则应对两个循环链表各设置一个指针,分别指向(各自的尾结点)。
54.二叉树的第I层上最多含有结点数为(2I)。
55.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为(2h-1)。
56.如果T2是由有序树T转换而来的二叉树,那么T中结点的先根序列就是T2中结点的(先根序列)。
57.用分划交换排序方法对包含有n个关键的序列进行排序,最坏情况下执
行的时间杂度为(O(n2))。
58.有n个叶子的哈夫曼树的结点总数为(2n-1)。
59.稀疏矩阵一般采用的压缩存储方法为(三元组表)。
60.若二叉树中度为2的结点有15个,度为1的结点有10个,则叶子结点的个数为(16)。
61.若某完全二叉树的深度为h,则该完全二叉树中具有的结点数至少是(2h-1)。
62.任何一棵二叉树的叶结点在其先根、中根、后根遍历序列中的相对位置(肯定不发生变化)。
63.初始序列已经按键值有序时,用直接插入算法进行排序,需要比较的次数为(n-1)。
64.对有n个记录的有序表采用二分查找,其平均查找长度的量级为(O(log2n))。
65用冒泡排序法对序列{18,16,14,12,10,8}从小到大进行排序,需要进行的比较次数是(15)。
66在一个有向图中,所有顶点的出度之和等于所有边数的倍数是
(1)。
67.有n个顶点的图采用邻接矩阵表示,则该矩阵的大小为(n*n)。
68.6个顶点的无向图成为一个连通图至少应有边的条数是(5)。
69.对有14个数据元素的有序表R[14]进行折半搜索,搜索到R[3]的关键码等于给定值,此时元素比较顺序依次为(R[6],R[4],R[2],R[3])。
70.串是(任意有限个字符构成的序列)。
71.个无向图中,所有顶点的度数之和等于所有边数
(1)倍。
72.单链表表示的链式队列的队头在链表的什么位置(链头)。
73.一组记录的关键字为{45,80,55,40,42,85},则利用堆排序的方法建立的初始堆为(85,80,55,40,42,45)。
74.对于一棵满二叉树,m个树叶,n个结点,深度为h,则(n=2h+1-1)
75.某二叉树的前序和后序序列正好相同,则该二叉树一定是什么样的二叉树(空或只有一个结点)。
76.在一棵具有n个结点的二叉树中,所有结点的空子树个数等于(n+1)。
77.若长度为n的线性表采用顺序存储结构,在表的第i个位置插入一个数据元素,需要移动表中元素的个数是(n-i+1)。
78.树中所有结点的度等于所有结点数加(-1)。
79.设二叉树根结点的层次为0,一棵高度为h的满二叉树中的结点个数是(2h+1-1)。
80.将一棵有50个结点的完全二叉树按层编号,则对编号为25的结点x,该结点(有左孩子,无右孩子)。
81.设有数组A[i,j],数组的每个元素长度为3字节,i的值为1到8,j的值为1到10,数组从内存首地址BA开始顺序存放,当用以列为主存放时,元素A[5,8]的存储首地址为(BA+180)。
82.在一个具有n个顶点的完全无向图的边数为(n(n-1)/2)。
83.设森林F中有三棵树,第一、第二和第三棵的结点个数分别为m1,m2和m3,则森林F对应的二叉树根结点上的右子树上结点个数是(m2+m3)。
84.对于键值序列{72,73,71,23,94,16,5,68,76,103}用筛选法建堆,开始结点的键值必须为(94)。
85.在图形结构中,每个结点的前驱结点数和后续结点数可以有(任意多个)。
86.对有n个记录的有序表采用二分查找,其平均查找长度的量级为(O(log2n))。
87.用孩子兄弟链表表示一棵树,若要找到结点x的第5个孩子,只要先找到x的第一个孩子,然后(从兄弟域指针连续扫描4个结点即可)。
88.有一个有序表为{1,3,9,12,32,41,45,62,75,77,82,95,100},当二分查找值为82的结点时,查找成功的比较次数是(4)。
.
89.当初始序列已经按键值有序时,用直接插入算法进行排序,需要比较的次数为(n-1)。
90.深度为h的满二叉树具有的结点个数为(2h+1-1)。
91.二维数组A[5][6]的每个元素占5个单元,将其按行优先顺序存储在起始地址为3000的连续的内存单元中,则元素A[4][5]的存储地址为(3145)。
92.一个具有n个顶点e条边的无向图中,采用邻接表表示,则所有顶点的邻接表的结点总数为(2e)。
93.一个具有n个顶点的图采用邻接矩阵表示,则该矩阵的大小为(n*n)。
94.一个具有n个顶点e条边的无向图中,采用邻接表表示,则所有顶点的邻接表的结点总数为(2e)。
95.若要在O
(1)的时间复杂度上实现两个循环链表头尾相接,则应对两个循环链表各设置一个指针,分别指向(各自的尾结点)。
96.在一棵高度为h(假定树根结点的层号为0)的完全二叉树中,所含结点个数不小于(2h)。
97.若待排序对象序列在排序前已按其排序码递增顺序排序,则采用比较次数最少的方法是(直接插入排序)。
98.有n个叶子的哈夫曼树的结点总数为(2n-1)。
99.二分查找法要求查找表中各元素的键值必须是(递增或递减)。
100.在对n个元素进行冒泡排序的过程中,最好情况下的时间复杂性为(
)。
101.链栈和顺序栈相比,有一个较明显的优点是(通常不会出现栈满的情况)。
102.将长度为m的单链表连接在长度为n的单链表之后的算法的时间复杂度为(O(n))。
103.若待排序对象序列在排序前已按其排序码递增顺序排序,则采用(直接插入排序)方法比较次数最少。
104.若字符串“1234567”采用链式存储,假设每个字符占用1个字节,每个指针占用2个字节,则该字符串的存储密度为(33.3﹪)。
105.用分划交换排序方法对包含有n个关键的序列进行排序,最坏情况下执
行的时间杂度为(O(n2))。
106.若在一棵非空树中,某结点A有3个兄弟结点(包括A自身),B是A的双亲结点,则B的度为(3)。
107.单链表中,增加头结点的目的是为了(方便运算的实现)。
108.深度为h的满二叉树所具有的结点个数是(2h+1-1)。
109.按照二叉树的定义,具有3个结点的二叉树有多少种(5)。
110.设长度为n的链队列用单循环链表表示,若只设头指针,则入队操作的时间复杂度为(O(n))。
111.树中所有结点的度等于所有结点数加(-1)。
112.树中所有结点的度等于所有结点数加(-1)
113.设有三个元素X,Y,Z顺序进栈(进的过程中允许出栈),下列得不到的出栈排列是(ZXY)。
114.用邻接表表示图进行深度优先遍历时,通常采用的辅助存储结构是(栈)。
115.对有18个元素的有序表作二分(折半)查找,则查找A3的比较序列的下标为(9、4、2、3)。
116.在含n个顶点e条边的无向图的邻接矩阵中,零元素的个数为(n2-2e)。
117.树形结构的特点是:
一个结点可以有(多个直接后继)。
118.使具有30个顶点的无向图成为一个连通图至少应有边的条数是(29)。
119.按照二叉树的定义,具有3个结点的二叉树具有的种类为(5)。
120.使具有9个顶点的无向图成为一个连通图至少应有边的条数是(8)。
121.在顺序表(n足够大)中进行顺序查找,其查找不成功的平均长度是(n+1)。
122.设树T的度为4,其中度为1,2,3和4的结点个数分别为4,2,1,1则T中的叶子数为(8)。
123.栈的插入和删除操作进行的位置在(栈顶)。
124.某二叉树的前序和后序序列正好相同,则该二叉树一定是的二叉树为(空或只有一个结点)。
125.链栈和顺序栈相比,有一个较明显的优点是(通常不会出现栈满的情况)。
126.对稀疏矩阵进行压缩存储是为了(节省存储空间)。
127.结点前序为xyz的不同二叉树,所具有的不同形态为(5)。
128.若一棵二叉树具有20个度为2的结点,6个度为1的结点,则度为0的结点个数是(21)。
129.一棵线索二叉树的线索个数比链接个数多
(2)个。
1.若一棵二叉树有10个叶结点,则该二叉树中度为2的结点个数为9。
2.在有序表(12,24,36,48,60,72,84)中二分查找关键字72时所需进行的关键字比较次数为2。
3.对于一棵二叉树,设叶子结点数为n0,次数为2的结点数为n2,则n0和n2的关系是n0=n2+1。
4.在循环链表中,从任何一结点出发都能访问到表中的所有结点。
5.普里姆(Prim)算法适用于边稠密图。
6.深度为h且有2k-1个结点的二叉树称为满二叉树。
(设根结点处在第1层)。
7.图的深度优先搜索方法类似于二叉树的先序遍历。
8.哈夫曼树是带权路径长度最小的二叉树。
9.二叉树的存储结构有顺序存储结构和链式存储结构。
10.哈夫曼树是带权路径长度最小的二叉树。
11.一般树的存储结构有双亲表示法、孩子兄弟表示法和孩子链表表示法。
12.将数据元素2,4,6,8,10,12,14,16,18,20依次存于一个一维数组中,然后采用折半查找元素12,被比较过的数组元素的下标依次为5,7,6。
。
13.图的深度优先遍历序列不是唯一的。
14.下面程序段的时间复杂度是O(mn)。
for(inti=1;
i<
=n;
i++)
for(intj=1;
j<
=m;
j++)
a[i][j]=0;
16.图的遍历是指从图中某一顶点出发访问图中全部顶点且使每一顶点仅被访问一次。
17.在一个图中,所有顶点的度数之和等于所有边的数目的2倍。
18.由一棵二叉树的后序序列和中序序列可唯一确定这棵二叉树。
19.在有序表(12,24,36,48,60,72,84)中二分查找关键字72时所需进行的关键字比较次数为2。
20.若二叉树的一个叶子结点是某子树的中根遍历序列中的第一个结点,则它必是该子树的后跟遍历中的第一个结点。
21.在直接插入排序、直接选择排序、分划交换排序、堆排序中稳定的排序方法有直接插入排序。
22.具有100个结点的完全二叉树的叶子结点数为50。
23.普里姆(Prim)算法适用于边稠密图。
24.在n个结点的顺序表中插入一个结点需平均移动n/2个结点。
25.将一棵树转换成一棵二叉树后,二叉树根结点没有右子树。
26循环队列的引入,目的是为了克服假溢出。
27.若连通网络上各边的权值均不相同,则该图的最小生成树有1棵。
28.在有序表(12,24,36,48,60,72,84)中二分查找关键字72时所需进行的关键字比较次数为2。
29.栈和队列的共同特点是插入和删除均在端点处进行。
30.二叉树的遍历方式有三种:
先序遍历、中序遍历、后序遍历。
31.若连通图的顶点个数为n,则该图的生成树的边数为n-1。
32.图的存储结构最常用的有邻接矩阵和邻接表。
33.若一棵二叉树有15个叶结点,则该二叉树中度为2的结的点个数为14。
34.队列中允许进行插入的一端称为队尾。
35.拓扑排序输出的顶点数小于有向图的顶点数,则该图一定存在环。
36.在有序表(15,23,24,45,48,62,85)中二分查找关键词23时所需进行的关键词比较次数为2。
37.则高度为k的二叉树具有的结点数目,最少为k,最多为2k-1。
38.若连通网络上各边的权值均不相同,则该图的最小生成树有1棵。
39.一个栈的输入序列是:
1,2,3则不可能的栈输出序列是312。
40.设有一个顺序栈S,元素S1,S2,S3,S4,S5,S6依次进栈,如果6个元素的出栈顺序为S2,S3,S4,S6,S5,S1,则顺序栈的容量至少应为3。
41.对于一棵二叉树,设叶子结点数为n0,次数为2的结点数为n2,则n0和n2的关系是n0=n2+1。
42.设某二叉树的后序遍历序列为ABKCBPM,则可知该二叉树的根为M。
43.数据结构的三个方面:
数据的逻辑结构、物理结构、运算。
44.每个结点只有一个链接域的链表叫做单链表。
45.设无向图G的顶点数为n,则要使G连通最少有n-1条边。
46.组成串的数据元素只能是字符。
47.图的存储结构最常用的有邻接表和邻接矩阵。
48.由一棵二叉树的后序序列和中序序列可唯一确定这棵二叉树。
49.队列中允许进行插入的一端称为队尾。
1.对于一个队列,如果输入项序列由1,2,3,4所组成,试给出全部可能的输出序列。
答:
1,2,3,4。
2.已知一棵二叉树的中序和前序序列如下,求该二叉树的后序序列。
中序序列:
c,b,d,e,a,g,i,h,j,f
前序序列:
a,b,c,d,e,f,g,h,i,j
该二叉树的后序序列为:
c,e,d,b,i,j,h,g,f,a
3.为什么说树是一种非线性结构?
树中的每个结点除了根结点外,其余每个结点有一个直接前驱,但有多个直接后继,所以说树是一种非线性结构。
4.将算术表达式a+b*(c+d/e)转为后缀表达式。
B.abcde/+*+
5.找出所有这样的二叉树形,其结点在先根次序遍历和中根次序遍历下的排列是一样的。
为空树,或为任一结点至多只有右子树的二叉树。
8.有
个顶点的无向连通图至少有多少条边?
有
个顶点的有向连通图至少有多少条边?
个顶点的无向连通图至少有n-1条边,有
个顶点的有向连通图至少有n条边。
9.下面列举的是常用的排序方法:
直接插入排序,起泡排序,快速排序,直接选择排序,堆排序,归并排序。
试问,哪些排序方法是稳定的?
起泡排序,直接插入排序,归并排序是稳定的。
10.完全二叉树用什么数据结构实现最合适,为什么?
完全二叉树用一维数组实现最合适。
因为完全二叉树保存在一维数组中时,数组内没有空洞,不存在空间浪费问题;
另外,顺序存储方式下,父子结点之间的关系可用公式描述,即已知父(或子)结点寻找子(或父)结点只需计算一个公式,访问结点方便。
但采用链表存储时就存在空间浪费问题,因为每个结点要另外保存两个链接域,并且寻找结点也不容易。
11.线性表有两种存储结构:
一是顺序表,二是链表。
试问:
如果有n个线性表同时并存,并且在处理过程中各表的长度会动态变化,线性表的总数也会自动地改变。
在此情况下,应选用哪种存储结构?
为什么?
选链式存储结构。
它可动态申请内存空间,不受表长度(即表中元素个数)的影响,插入、删除时间复杂度为O
(1)。
12.试述顺序存储和链式存储的区别及各自的优缺点。
数组占用连续的内存空间,链表不要求结点的空间连续。
1)插入与删除操作:
由于数组在插入与删除数据时需移动大量的数据元素,而链表只需要改变一些指针的链接,因此,链表比数组易于实现数据的插入和删除操作。
2)内存空间的占用情况:
因链表多了一个指针域,故较浪费空间,因此,在空间占用方面,数组优于链表。
3)数据的存取操作:
访问链表中的结点必须从表头开始,是顺序的存取方式,而数组元素的访问是通过数组下标来实现的,是随机存取方式,因此,在数据存取方面,数组优于链表。
数据的合并与分离:
链表优于数组,因为只需要改变指针的指向
13.将表达式((a+b)-c*(d+e)-f)*(g+h)改写成后缀表达式。
后缀表达式为:
ab+cde+*-f-gh+*
19.写出中缀表达式A-(B+C/D)*E的后缀形式。
中缀表达式A-(B+C/D)*E的后缀形式是:
ABCD/+E*-。
20.为什么用二叉树表示一般树?
树的最直观表示是为树中结点设置指向子结点的指针域,对k叉树而言,每个结点除data域外,还有k个链接域。
这样,对一个有n个结点的k叉树来说,共有n*k个指针域,其中n-1个不空,另外n(k-1)+1个指针域为空,因此,空链接域的比例约为(k-1)/k,于是导致大量的空间浪费。
然而,如果采用二叉树表示一棵n个结点的树,则树中共有2n个链接域,其中未用到的有n+1个,占所有指针域的比例约为1/2,空间浪费少很多。
另外,因为任何树型结构都可以转换成二叉树,因此,通常用二叉树表示树型结构。
21.已知数据序列为12,5,9,20,6,31,24,对该数据序列进行排序,试写出冒泡排序每趟的结果。
初始键值序列12592063124
第一趟排序[591262024]31
第二趟排序[5961220]2431
第三趟排序[59612]202431
第四趟排序56912202431
22.试找出前序序列和中序序列相同的所有二叉树。
解答:
空树或缺左子树的单支树。
23.完全二叉树用什么数据结构实现最合适,为什么?
26.我们已经知道,树的先根序列与其对应的二叉树的先根序列相同,树的后根序列与其对应的二叉树的中根序列相同。
那么利用树的先根遍历次序与后根遍历次序,能否唯一确定一棵树?
请说明理由。
能。
因为树的先根序列与
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构