线性表中第i(1wiwn)个数据元素之前插入一个新的数据元素需要移动n-i+1个数据元素。
4.在非空的单循环链表h中,某个结点p为尾结点的条件是
p_>next=h。
5.一个队列的入队序列是a、b、c、d,则队列的输出序列为abed。
6.栈结构通常采用的两种存储结构是顺序栈和链栈—。
7.设栈S和队列Q的初始状态为空,元素a、b、c、d、e、f依次通过栈
S,一个元素出栈后即进入队列Q。
若这6个元素出队列的顺序是b、d、
c、f、e、a,则栈S的容量至少应该是—。
8.设有一个nxn的对称矩阵A将其上三角部分按行存放在一个一维数组B中,A[0][0]存放于B[0]中,那么第i行的对角元素A[i][i]存放于B中(2n-i+1)*i/2处。
9.设有5对角矩阵A=(aij)20*20,按特殊矩阵压缩存储的方式将其5条对
角线上的元素存于数组B[0:
m]中,计算元素A[10,10]的存储位置
44。
10.已知广义表L=(a,((),b),((e))),利用取表头和取表尾的操作分离出原子e的运算是GetHead(GetHead(GetHead(GetTail(GetTail(L)))))。
11.设广义表B=((),(a,(b,c)),(e,f),()),表头为_(J,表
尾为(a,(b,c)),(e,f),()。
12.在空串和空格串中,长度不为0的是「空格串-。
13.有n个结点的二叉链表中,其中空的指针域为n+1.指向孩子的指针个
数为__n-1o
14.中缀算术表达式5+6/(23-(6+15))*8所对应的后缀算术表达式为
__5,6,23,6,15,+,-,/,8,*,+。
15•假定一棵二叉树的结点个数为50,则它的最小深度为___6___,最大深
度为50.o
16.一棵树的后根序列与其转换的二叉树的中序列相同,先根序列
与其转换的二叉树的先序列相同。
17.具有400个结点的完全二叉树的深度为9o
18.一棵二叉树有67个结点,这些结点的度要么是0,要么是2。
这棵二
叉树中度为2的结点有__33___个。
19.已知森林的先序访问序列为ABCDEFGHIJKL;中序访问序列为
CBEFDGAJIKLH。
则该森林有__2__棵树。
20.当对字符集进行编码时,字符集中任一字符的编码都不是其他字符的
编码的前缀,这种编码称―二进制前缀编码o
21.高度为h的二叉树只有度为0和2的结点,则此类二叉树的结点数至
少为2h-1+1个结点,至多为2h-1个结点。
22.深度为k的完全二叉树至少有f个结点,至多有2k-1个结点。
23.一个有30个结点的完全二叉树有15个叶子结点;有14个度
为2的结点。
24.高度为i(i>1)的完全二叉树按自上而下,从左到右的次序给结点编号
(从1开始),则可能的编号最小的叶子结点的编号为2k-2+1o
25.设图G=(V,E),V={1,2,3,4},E={,<1,3>,<2,4>,
<3,4>},从顶点1出发,对图G进行广度优先搜索的序列有_2—种。
26.有向图G用邻接矩阵A[1..n,1..n]存储,矩阵中元素值1代表有弧,0
代表无弧,其第i行的所有元素之和等于顶点i的出度—度。
27.一个连通图的生成树是该图的极小连通子图。
若这个连通图有n
个顶点,则它的生成树有条边。
28.n个顶点的无向连通图的邻接矩阵中至少有__2(n-1)—个非零元素,至
多有_n(n-1)_个非零元素。
29.PRIM算法与图的边数无关,适合求解稠密图的最小生成树。
30.一棵3阶B-树中每个结点最多有3棵子树,每个结点最多有_2
个关键字。
含有9个叶子结点的3阶B-树至少有4_个非叶结点,至多有_7_个非叶结点。
31.从有序表(12,18,30,43,56,78,82,95)中依次二分查找43和56
元素时,其查找长度分别为__1___和__3__o
32.向一棵二叉排序树中插入一个元素时,若元素的值小于根结点的值,则应把它插入到根结点的—左子树上。
33.分别采用堆排序、快速排序、插入排序和归并排序算法对初始状态递
增序列按递增顺序排序,最省时间的是算法插入排序,最费时间
的是算法快速排序。
三、简答及图示说明题
1.广义表的基本概念,如A=((a,b),c,(d,e,f)),用GetGead和GetTail操作
取元素d
2.根据给定二叉树的先序和中序序列,构造二叉树
3.根据给定树的先序和后序序列,构造树
4.已知二叉树,画出中序的线索。
5.森林和二叉树的相互转换
6.有7个带权结点,其权值分别为3,7,8,2,6,10,14,试以它们为
叶子结点生成一棵哈夫曼树,画出相应的哈夫曼树(左子树根结点的权
小于等于右子树根结点的权),并写出哈夫曼编码,计算带权路径长度。
7.给出图的顶点集合和边的集合,能画出图的邻接矩阵、邻接表,或者
给出图的存储结构,能够画出对应的图
8.用普里姆(prim)算法或克鲁斯卡尔(Kruskal)算法构造最小生成树。
9.从某个顶点出发,画出图的深度优先生成树和广度优先生成树。
10.设图G=(V,E),V={1,2,3,4,5,6},E={<1,2>,<1,3>,<2,5>,<3,6>,<6,5>,<5,4>,<6,4>}。
请写出图G中顶点的所有拓扑序列。
11.已知一个图的顶点集V和边集G分别为:
V={0,1,2,3,4,5,6,7};G={(0,1)3,(0,3)5,(0,5)18,(1,3)7,(1,4)6,(2,4)10,(2,7)20,(3,5)15,(3,6)12,(4,6)8,(4,7)12};
按照普里姆算法从顶点2出发得到最小生成树,试写出在最小生成树
中依次得到的各条边。
12.设a1、a2、a3是不同的关键字,且a1>a2>a3,可组成六种不同的输入序
列。
问其中哪几种输入序列所构造的二叉排序树的高度为3?
13.构造二叉排序树,在查找每个结点概率相等情况下的平均查找长度,二叉排序树的插入和删除算法
14.画出用线性探测再散列(线性探查法)处理冲突时生成的哈希表及计算平均查找长度
15.画出用外链法处理冲突时生成的哈希表及计算查找成功时的平均查找长度
16.对于一组记录的排序码为(465,792,562,383,401,845,502,423),
写出基数排序(低位优先)进行一趟分配与回收后的结果。
17.给定健值序列{49,38,65,97,76,13,27,49*},要求按关键字递增排序,分别写出直接插入排序、起泡排序、简单选择排序、归并排
序、快速排序的第一趟和第二趟排序结果
18.初建堆和筛选法调整堆(小顶堆、大顶堆)算法,给定序列,画出堆对应的完全二叉树的初始状态和初建堆的状态