数据结构模拟考试题 B
- 格式:doc
- 大小:101.00 KB
- 文档页数:3
数据结构试卷B试题B⼀、填空题(18⼩题,40个空,每空分,共20分)1、数据结构是⼀门研究⾮数值计算的程序设计问题中计算机的以及它们之间的和运算等的学科。
2、线性结构中元素之间存在关系,树形结构中元素之间存在关系,图形结构中元素之间存在关系。
3、在顺序表中插⼊或删除⼀个元素,需要平均移动,具体移动的元素个数与有关。
4、在顺序表中访问任意⼀结点的时间复杂度均为,因此,顺序表也称为的数据结构。
5、顺序表中逻辑上相邻的元素的物理位置相邻。
单链表中逻辑上相邻的元素的物理位置相邻。
6、若n为主串长,m为⼦串长,则串的古典(朴素)匹配算法最坏的情况下需要⽐较字符的总次数为。
7、求下列⼴义表操作的结果:(1)GetHead【((a,b),(c,d))】=== ; //头元素不必加括号—(2)GetHead【GetTail【((a,b),(c,d))】】=== ;(3)GetHead【GetTail【GetHead【((a,b),(c,d))】】】=== ;(4)GetTail【GetHead【GetTail【((a,b),(c,d))】】】=== ;8、⼀棵具有257个结点的完全⼆叉树,它的深度为。
9、设⼀棵完全⼆叉树具有1000个结点,则此完全⼆叉树有个叶⼦结点,有个度为2的结点,有个结点只有⾮空左⼦树,有个结点只有⾮空右⼦树。
10、图有、等存储结构,遍历图有、等⽅法。
11、n个顶点e条边的图采⽤邻接矩阵存储,⼴度优先遍历算法的时间复杂度为;若采⽤邻接表存储,该算法的时间复杂度为。
12、⽤Dijkstra算法求某⼀顶点到其余各顶点间的最短路径是按路径长度的次序来得到最短路径的。
13、假设在有序线性表a[20]上进⾏折半查找,则⽐较⼀次查找成功的结点数为1;⽐较两次查找成功的结点数为;⽐较四次查找成功的结点数为;平均查找长度为。
14、在各种查找⽅法中,平均查找长度与结点个数n⽆关的查找⽅法是。
⼤多数排序算法都有两个基本的操作:和。
一、单项选择题(每小题2分,共30分)1.下列关于栈的叙述中,正确的是()oA.栈底元素一定是最后入栈的元素B.栈操作遵循先进后出的原则C.栈顶元素一定是最先入栈的元素D.以上三种说法都不对2.在数据结构中,与所使用的计算机硬件无关的是数据的()结构。
A.逻辑B.存储C.逻辑和存储D.物理3.以下说法正确的是()oA.数据项是数据的基本单位B.数据元素是数据的最小单位C.数据结构是带结构的数据项的集合D.一些表面上很不相同的数据可以有相同的逻辑结构4.六个元素按照6, 5, 4, 3, 2, 1的顺序入栈,下列哪一个是合法的出栈序列?()A.546132B. 453126C. 346512D. 2341565.设树的度为4,其中度为1、2、3、4的结点个数分别是4、2、1、2,则树中叶子个数为()A.8B. 9C. 10D. 116.分别用以下序列构造二叉排序树,与用其他三个序列构造的结果不同的是()A, (100,80,90,60,120,110,130) B. (100,120,110,130,80, 60,90)C, (100,60,80,90,120,110,130)D, (100,80, 60,90,120,130,110)7.下列陈述中正确的是()A.二叉树是度为2的有序树B.二叉树中结点只有一个孩子时无左右之分C.二叉树中必有度为2的结点D.二叉树中最多只有两棵子树,并且有左右之分8.在含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为()A. eB. 2eC. n2—eD. n2—2e9.栈和队列都是()A.限制存取位置的线性结构B.顺序存储的线性结构C.链式存储的线性结构D.限制存取位置的非线性结构10.在具有n个叶子结点的严格二叉树(即结点的度要么是0要么是2)中,结点总数为()A. 2n+lB. 2nC. 2n・lD. 2n-211.在循环双链表的P所指的结点之前插入S所指结点的操作是()oA.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 = s12,单链表中,增加一个头结点的目的是为了()oA.使单链表至少有一个结点B.标识表结点中首结点的位置C.方便算法的实现D.说明单链表是线性表的链式存储13,对一个满二叉树,m个叶子,n个结点,深度为h,则()。
数据结构B一、单项选择题(每题5分,共30分)1. 在数据结构中,从逻辑上可以把数据结构分成()。
A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2. 设有两个串S1与S2,求串S2在S1中首次出现位置的运算称作()。
A.连接B.求子串C.模式匹配D.判子串3. 一个n个顶点的连通无向图,其边的个数至少为()。
A.n-1 B.nC.n+1 D.nlogn4. 要连通具有n个顶点的有向图,至少需要()条边。
A.n-l B.nC.n+l5. 关键路径是事件结点网络中()。
A.从源点到汇点的最长路径B.从源点到汇点的最短路径C.最长回路D.最短回路6.一个有n个顶点的无向连通图,它所包含的连通分量个数为()。
A.0 B.1C.n D.n+1二、填空题(每空2分,共20分)1. 数据结构是指_________结构和_________结构两种,通常是指_________结构。
2. 线性表的两种存储结构分别为_________和_________。
3. 单链表是_________的链接存储表示。
4. 从一个栈删除元素时,首先取出_________,然后再使_________减1。
5. 一个字符串相等的充要条件是和。
三、算法(10分)请阅读下列算法,回答问题PROCEDURE sort(r,n)BEGINFOR i:=2 TO n DOBEGINx:=r(i);r(O):=x;j:=i-1;WHILE x.key<r(j).key DOBEGINr(j+1):=r(j); j:=j-1END;r(j+1):=xENDEND;问题一:这是什么类型的排序算法,该排序算法稳定吗?问题二:设置r(O)的作用是什么?若将WHILE-DO 语句中判断条件改为x.key<=r(j).KEY,该算法将会有什么变化,是否还能正确工作?三、应用题(共40分)1、分别论述在稠密索引文件和非稠密索引文件的查找一个记录时,首先查什么?然后查什么?2、散列表存储的基本思想是什么?3、对一个图进行遍历可以得到不同的遍历序列,那么导致得到的遍历序列不唯一的因素有哪些?4、在执行某个排序方法的过程中,出现排序码朝着最终排序序列相反的方向移动,从而认为该排序算法是不稳定的。
浙江科技学院考试试卷浙江科技学院2010 -2011 学年第 2 学期考试试卷 B 卷考试科目 数据结构 考试方式 闭 卷 完成时限 120分钟 拟题人 审核人 批准人 年 月 日 理学 院 09 年级 信息与计算科学 专业一、是非题(每小题1分,共10分)正确的在括号内打√,错误的打×.( )1. 数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理.( )2. 数据结构是相互之间存在一种或多种关系的数据元素的集合,数据元素相互之间的关系称为结构.( )3. 对于抽象数据类型而言,不论其内部结构变化如何,只要它的数学特性不变,都不影响其外部的使用.( )4. 线性表的逻辑顺序与物理顺序总是一致的.( )5. 每种数据结构都应具备三种基本运算:插入、删除、搜索. ( )6. 空串与由空格组成的串没有区别. ( )7. 完全二叉树就是满二叉树.( )8. 已知一棵二叉树的前序序列和中序序列,则可以唯一地构造出该二叉树. ( )9. 带权连通图的最小生成树的权值之和一定小于它的其他生成树的权值之和. ( )10. 内部排序要求数据一定要以顺序方式存储.二、选择题(单项选择,每小题2分,共40分) 请将你认为正确的选项填入下表中。
专业班级 学号 姓名………………………………………………………………………装订线……………………………………………………………………………………1. 算法在发生非法操作时可以作出处理的特性称为().A. 正确性B. 易读性C.高效率 D. 健壮性2. 执行下面程序段时,执行S语句的次数为().for (int i = 1; i <= n; i ++)for (int j = 1; j <= i; j ++) S;A. 2nB. n/2C. n(n+1)D. n(n+1)/23. 数据结构的定义为(D, S),其中S是()的集合.A. 算法B. 数据元素C. 关系D. 逻辑结构4. 有六个元素按照6,5,4,3,2,1的顺序进栈,则下列()项不是合法的出栈序列.A. 5 4 3 6 1 2B. 4 5 3 1 2 6C. 3 4 6 5 2 1D. 2 3 4 1 5 65. 广义表A(a),则表尾为().A. aB. (())C. 空表D. (a)6. 二叉树中第4层上的结点最多为().A. 8B. 15C.16D. 327. 对右图所示二叉树,进行后序遍历的结果是().A. ABCDEFB. DBEAFCC. ABDECFD. DEBFCA8. 假设以行序为主序存储二维数组A = array[1..100,1..100]设每个数据元素占两个存储单元,基地址为10,则Loc[5,5]().A. 808B. 818C. 1010D. 10209. 具有35个结点的完全二叉树的深度为().A. 5B. 6C. 7D. 810. 若一棵二叉树具有9个度为2的结点,则该二叉树的度为0的结点个数是().A. 9B. 10C. 11D. 不确定11. 在有n个结点的二叉树的二叉链表表示中,空指针数为().A. 不定B. n+1C. nD. n-112. 具有n个结点的二叉树,拥有指向孩子结点的分支数目是().A. n-1B. nC. n+1D. 2n13. 在完全二叉树中,若一个结点是叶子结点,则它没有().A. 左孩子结点B. 右孩子结点C. 左孩子结点和右孩子结点D. 左孩子结点,右孩子结点和兄弟结点14. 有m个叶子结点的哈夫曼树,其结点总数是().A. 2m-1B. 2mC. 2m+1D. 2(m+1)15. 任何一个无向连通图的最小生成树().A. 只有一棵B. 有一棵或多棵C. 一定有多棵D. 可能不存在16. 下列查找方法中,()适合用于查找有序单链表.A. 顺序查找B. 二分查找C. 分块查找D. 哈希查找17. 在长度为100的有序线性表中进行顺序查找,最坏情况下需要比较的次数为().A. 99B.100C. 101D. 018. 对关键码序列28,16,32,12,60,2,5,72快速排序,若选28为枢轴记录关键字,则从小到大一次划分结果为().A. (2,5,12,16)28(60,32,72)B. (5,16,2,12)28(60,32,72)C. (2,16,12,5)28(60,32,72)D. (5,16,2,12)28(32,60,72)19. 下列排序算法中,()排序在一趟结束后不一定能选出一个元素放在其最终位置上.A. 选择B. 冒泡C. 归并D. 堆20. 一个序列中有10000个元素,若只想得到其中前10个最小元素,最好采用的排序方法是().A. 快速排序B. 堆排序C. 插入排序D. 二路归并排序三、填空题(每空1分,共15分)1. 在线性结构中,____________具有先进先出特性,___________具有先进后出特性.2. 有向图的存储结构有______________、_____________、_____________等方法.3. 具有10个顶点的连通图的深度优先生成树,其边数为_________________.4. 已知U = ’xyxyxyxxyxy’,t = ’xxy’,StrAssign(S, U),StrAssign(V, Substring(S, Index(s,t), StrLength(t)+1)),StrAssign(m,’ww’)求Replace(S, V, m)=___________________.5. 具有相同函数值的关键字对于哈希函数来说称作__________________.6. 已知一组待排序列的记录关键字初始排序为:56,34,58,26,79,52,64,37,28,84,57.若选中第一个记录关键字为枢轴记录,则一趟快速排序的结果为:_____________________;若建立大根堆,则初始堆为____________________.7. 由A, B, C, D, E五个结点构成的二叉树,共有_________种互不相似的结构.8. 长度为225的表,采用分块查找法,每块的最佳长度是______,应分为______块,若每块的长度为10,则平均查找长度为_________________.9. 快速排序在平均情况下的时间复杂度为_____________.四、应用题(共30分)1. (8分)已知一棵二叉树的中序序列和后序序列如下,求该二叉树的高度(假定空树的高度为-1)和度为2、度为1及度为0的的结点个数.中序序列:CBDEAGIHJF;后序序列:CEDBIJHGFA2. (7分)假设用于通信的电文仅由8种字符母{A,B,C,D,E,F,G,H}组成,它们在电文中出现的频率分别为{0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10}。
安徽大学2010—2011学年第2学期《 数据结构 》考试试卷(B 卷) (闭卷 时间120分钟)考场登记表序号一、填空题(每小题1.5分,共15分) 1.含有36个元素的有序表,进行二分查找时的判定树的深度为 6 。
2.在一个无向图中,所有顶点的度数之和等于所有边数的 2 倍。
3. 由带权为9、2、5、7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为 44 。
4.由a ,b ,c 三个结点构成的二叉树,共有 5 种不同形态。
5.二维数组A[0‥5][5‥10]以行序为主序存储,每个元素占4个存储单元,且A[0][5]的存储地址是1000,则A[3][9]的地址是 1088 。
6.若串s=''soft ,则其子串个数是 11 。
7. 设循环队列的空间大小为M ,入队时修改队尾指针rear 的语句为 rear=(rear+1)%M 。
8.在顺序存储结构的线性表中,插入或删除一个数据元素大约需移动表中 一半 元素。
9.下列程序段的时间复杂度是 O(m*n) 。
for (i=0;i<n;i++) for (j=0;j<m;j++) A[i][j]+=5;10. 在数据结构中,与所使用的计算机无关的是数据的 逻辑 结构。
二、单项选择题(每小题2分,共20分)1. 数据结构可以用二元组来表示,它包括( A )集合D 和定义在D 上的( C )集合R 。
A 、数据元素B 、存储结构C 、元素之间的关系D 、逻辑结构2. 已知L 是一个不带头结点的单链表,p 指向其中的一个结点,选择合适的语句实现在院/系 年级 专业 姓名 学号答 题 勿 超 装 订 线 ------------------------------装---------------------------------------------订----------------------------------------线----------------------------------------p结点的后面插入一个结点s的操作(B)。
数据结构模拟卷(含答案)经典习题练习题一、单项选择题1. 若将数据结构形式定义为二元组(K,R),其中K是数据元素的有限集合,则R是K上( )A. 操作的有限集合B. 映象的有限集合C. 类型的有限集合D. 关系的有限集合2. 在长度为n的顺序表中删除第i个元素(1≤i≤n)时,元素移动的次数为( )A. n-i+1B. iC. i+1D. n-i3. 若不带头结点的单链表的指针为head,则该链表为空的判定条件是( )A. head==NULLB. head->next==NULLC. head!=NULLD. head->next==head4. 引起循环队列队头位置发生变化的操作是( )A. 出队B. 入队C. 取队头元素D. 取队尾元素5. 若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则不.可能出现的出栈序列是( )A. 2,4,3,1,5,6B. 3,2,4,1,6,5C. 4,3,2,1,5,6D. 2,3,5,1,6,46. 字符串通常采用的两种存储方式是( )A. 散列存储和索引存储B. 索引存储和链式存储C. 顺序存储和链式存储D. 散列存储和顺序存储7. 数据结构是()A.一种数据类型B.数据的存储结构C.一组性质相同的数据元素的集合D.相互之间存在一种或多种特定关系的数据元素的集合8. 算法分析的目的是()A.辨别数据结构的合理性B.评价算法的效率C.研究算法中输入与输出的关系D.鉴别算法的可读性9. 在线性表的下列运算中,不.改变数据元素之间结构关系的运算是()A.插入B.删除C.排序D.定位10. 下列图示的顺序存储结构表示的二叉树是( )11. 设串sl=″Data Structures with Java″,s2=″it″,则子串定位函数index(s1,s2)的值为()A.15 B.16C.17 D.1812. 二维数组A[8][9]按行优先顺序存储,若数组元素A[2][3]的存储地址为1087,A[4][7]的存储地址为1153,则数组元素A[6][7]的存储地址为()A.1213 B.1209C.1211 D.120713. 在按中序遍历二叉树的算法中,需要借助的辅助数据结构是()A.队列B.栈C.线性表D.有序表14. 在任意一棵二叉树的前序序列和后序序列中,各叶子之间的相对次序关系()A.不一定相同B.都相同C.都不相同D.互为逆序15. 若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的()A.层次遍历算法B.前序遍历算法C.中序遍历算法D.后序遍历算法16. 若用邻接矩阵表示一个有向图,则其中每一列包含的″1″的个数为()A.图中每个顶点的入度B.图中每个顶点的出度C.图中弧的条数D.图中连通分量的数目17. 图的邻接矩阵表示法适用于表示()A.无向图B.有向图C.稠密图D.稀疏图18. 若有序表的关键字序列为(b,c,d,e,f,g,q,r,s,t),则在二分查找关键字b的过程中,先后进行比较的关键字依次为()A.f,c,b B.f,d,bC.g,c,b D.g,d,b19. 下面程序段的时间复杂度为( )s=0;for(i=1;i<n;i++)for(j=1;j<i;j++)s+=i*j;A.O(1)B.O(logn)C.O(n)D.O(n2)20. 已知指针p和q分别指向某单链表中第一个结点和最后一个结点。
试卷B一、选择题(本题共20分,每题2分)1.在数据结构中,从逻辑上可以把数据结构分成( ) 。
A .动态结构和静态结构 B. 线性结构和非线性结构 C. 紧凑结构和非紧凑结构 D. 内部结构和外部结构 2. 下列程序段的时间复杂度是( )count=0;for(k=1;k<=n;k*=2) for(j=1;j<=n;j++) count++;A.O(nlog2n)B.O(n)C.O(log2n)D.O(n2) 3. 以下描述错误的是:( )A. 线性表是n 个数据元素的有限非空集合。
B. 栈和队列都是操作受限的线性表。
C. 串(或字符串)是由零个或多个字符组成的有限序列。
D. 非空栈中的栈顶指针top 始终指向栈顶元素的下一个位置。
4. 若采用少用一个队列空间的方法来区分队满队空两种状态,则判定一个顺序循环队列 Q (最大队列长度MAXSIZE )为满队列的条件是( )。
A. Q.front=Q.rearB. Q.front!=Q.rearC. Q.front=(Q.rear+1) % MAXSIZED. Q.front!=(Q.rear+1) % MAXSIZE 5. 按照二叉树的定义,具有 3 个结点的二叉树有( )种。
A. 3 B. 4 C. 5 D. 66. 设矩阵A (如下图所示)是一个对称矩阵,为了节省存储,将其下三角(包括对角线)部分按行序存放在一维数组 B[n(n+1)/2]中,对下三角部分中任一元素 ai,j(i ≥j),在一维数组 B 的下标位置k 的值是( )。
A. i(i-1)/2+j-1 B. i(i-1)/2+j C. i(i+1)/2+j-1 D. i(i+1)/2+j0,01,01,11,01,11,1...............n n n n a a a A a a a ----⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦7. 有一个有序表为{5, 18,23, 33, 42, 54,56,78},当折半查找56时,经过( )次比较后查找成功。
数据结构模拟考试(总分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)。
重庆邮电大学20xx——20xx 学年
《数据结构》(54学时)模拟考试题
注意:请仔细阅读题目,按要求答题,并请保持字迹清楚,容易阅读。
选择题(每题2分,共20分)
1.设循环队列中数组的下标范围是0..n-1,其头指针front指向队首元素,rear指向队尾元素,则队列的长度为()。
A.rear-front B.rear-front+1
C.(rear-front+1)%(n+1) D.(rear-front+n+1)%n 2.线性表的链式存储结构与顺序(连续)存储结构相比优点是()A.所有的操作/运算算法简单 B.便于随机存取
C.便于插入和删除 D.便于查找
3.一个栈的输入序列为A,B,C,D,E,则下列序列中不可能是栈的输出序列的是()。
A.B C D A E B.E D A C B
C.B C A D E D.A E D C B
4.将一个A[1..20][1..20] (注:下标均从1开始计)的矩阵,按行序为主存放,每个元素占4个存储单元,并且A[1,2]的存储地址是1004,则A[20,2]的地址是()。
A.1004 B.1380 C. 1520 D.2524
5.如一个序列已经基本有序,则采用()算法最节省时间。
A.归并排序
B.插入排序
C.快速排序
D.直接选择排序
6.时间复杂度低,排序时间基本不受待排序序列初始状态的影响,且稳定的排序方法是()。
A.直接选择排序
B. SHELL排序C堆排序 D.归并排序7.在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则依相同次序从该缓冲区中取出数据打印。
该缓冲区作为数据结构是一个()结构。
A. 栈
B.队列
C.表(Table)
D.线性表
8.高度为4的二叉平衡树(空树高度为0)最少有()个结点。
A. 12
B. 15
C. 13
D. 7
9.下面四棵树中,数字表示相应叶子结点的权值,则()是哈夫曼树(Huffman Tree)。
10.若无向图G有6个顶点,至少需要()条边,才能保证该图一定是连通图(边可依附任两顶点,但无重复边和自环)。
A.
21 B. 5 C. 12 D. 30
二、填空题(每题2分,共20分)
1. 设栈S和队列Q的初始状态为空,元素a、b、c、d、e、f将依次入栈S,
一个元素出栈后即进入队列Q。
若这6个元素出队列的顺序是b、d、c、
f、e、a,则栈S的容量至少应该是,上述过程才不会出错。
2.已知某二叉树的后序遍历序列是BEDCA, 中序遍历序列是BADEC,那么它的前序遍历序列是。
3.已知完全二叉树的第4层(根结点为第1层)总共只有2个结点,则其叶子结点数是。
4.某表达式二叉树按先序遍历的结果为+a*+bcd,令a=6,b=3,c=4,d=2,则
,Q.append(2),Q.append(3),
的
在
R[1..n] (下
__ 。
S所指结点的执行
76,13,27,50),设选第一第一趟排序的结果。
4.运用堆排序(Heapsort)方法,设初始序列为(46,88,45,39,70,58,101,10,66,34),若按教材上的算法建初始堆,画出初始堆的树状图。
5.设Hash函数为H(K)=K mod 7,哈希表的地址空间为0,...,6,开始时哈希表为空,用线性探测法解决冲突,请画出依次插入键值23,14,9,
6,30,12,18后的哈希表。
四、算法应用、分析题(共20分)
1.图G各顶点的连接关系及相应权值如
右图所示。
(1)画出该图的邻接距阵;
(2)并从顶点0开始对图进行广度优
先遍历,写出遍历结果;(3)使用Prim
算法求该图的最小生成树,画出其生成
过程。
2.A是有M个数据的队列,另有N个数
据的有序序列B,某程序将数据从队列
A中取出来,使用二分查找法查找该数
据在B中的位置并输出。
试分析该程序
的时间复杂度(简要写出分析步骤)。
五、算法设计题。
(共10分)
现有一棵二叉查找(排序)树(Binary Search Tree)BST,以二叉链表形式存储,进行中序遍历可得到从小到大排列的有序序列。
1.请编写一函数,对该二叉查找树进行变换,使得对新的二叉树进行中序
遍历可得到从大到小排列的有序序列。
2.请用中文文字直接描述在新的二叉树上找最大元素的方法。
有关的数据结构已描述如下:
struct Binary_node { // 二叉树结点
int data;
Binary_node *left;
Binary_node *right;。