级西南民大数据结构模拟卷.docx

上传人:b****4 文档编号:11531246 上传时间:2023-03-18 格式:DOCX 页数:8 大小:56.74KB
下载 相关 举报
级西南民大数据结构模拟卷.docx_第1页
第1页 / 共8页
级西南民大数据结构模拟卷.docx_第2页
第2页 / 共8页
级西南民大数据结构模拟卷.docx_第3页
第3页 / 共8页
级西南民大数据结构模拟卷.docx_第4页
第4页 / 共8页
级西南民大数据结构模拟卷.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

级西南民大数据结构模拟卷.docx

《级西南民大数据结构模拟卷.docx》由会员分享,可在线阅读,更多相关《级西南民大数据结构模拟卷.docx(8页珍藏版)》请在冰豆网上搜索。

级西南民大数据结构模拟卷.docx

级西南民大数据结构模拟卷

题号

总分

得分

一、请判断下列说法的是否正确:

(10分)

(1)若某堆栈的输入序列为1,2,3,4,则4,3,1,2不可能是堆栈的输出序列之一。

()

(2)队列逻辑上是一个表头和表尾既能插入又能删除的线性表。

()

(3)若一个叶子结点是某子树的中序遍历序列的最后一个结点,则它必是该子树的先序遍历中的最后一个结点。

()

(4)在索引顺序表上实现分块查找,在等概率查找情况下,其查找长度只与表中元素个数有关,而与每块中元素个数无关。

()

(5)二叉树为二叉排序树的充分必要条件是其任一结点的值均大于其左孩子的值,小于其右孩子的值。

()

(6)在10万个随机排列的数据中,要选出5个最小的数,采用快速排序比采用Shell排序、堆排序及各种直接排序法都快。

()

(7)用邻接矩阵法存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间大小与图中的结点的个数有关,而与图的边数无关。

()。

-

(8)在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和。

()

(9)二分查找法不仅适用于顺序存储的有序表,而且适合于链接表。

()

(10)按中序遍历一棵二叉排序树所得到的遍历序列是一个递增序列。

()

二、填空(20分)

(1)数据结构有如下四种基本结构:

、、、。

(2)在一个算法中的语句频度之和为T(n)=3720n+4nlogn,则算法的时间复杂度为。

(3)已知某二叉树的叶子结点的个数为10个,度为1的结点个数为8个,则该二叉树的结点总数为:

个。

(4)已知一个有序表为(13,18,24,35,47,50,62,83,90,115,134),当二分检索值为90的元素时,需_____次比较可检索成功。

(5)、图的遍历方法主要有两个,一个是,另一个是。

(6)在哈希造表过程中,处理冲突的方法主要有:

,,。

(7)在一个单链表中p所指结点(p所指不是最后结点)之后插入一个由指针s所指结点,应执行s->next=_____;和p->next=________的操作。

(8).已知一棵二叉树的先序序列为ABCD,中序序列为BCAD,则它的后序序列为______。

(9)有N个顶点组成的无向连通图,最多可以___________条边。

(10)、若某序列的初始状态为{49,13,42,8,65,55,79},若以49为枢轴,则经过一趟快速排序之后的序列为:

三、单项选择题(每小题2分,共20分)

1.从一个长度为n的顺序表中删除第i个元素(1≦i≦n)时,需向前移动()个元素。

A).n-iB).n-i+1C).n-i-1D).i

2)、队列操作的原则是:

()

A)先进先出B)后进先出C)只能进行插入D)只能进行删除

3)下列算法中,()算法用来求图中每对顶点之间的最短路径。

A).DijkstraB).FloyedC).PrimD).Kruskal

4、下面关于线性表的叙述中,错误的是()

A)线性表采用顺序存储,必顺占用一片连续的存储单元。

B)线性表采用顺序存储,便于进行插入和删除操作。

C)线性表采用链接存储,不必占用一片连续的存储单元

D)线性表采用链接存储,便于插入和删除操作。

5、对下面的有向图进行拓扑排序,其排序结果不正确的是:

()。

 

A)1、4、2、6、5、3B)1、2、4、6、3、5C)1、4、2、5、6、3

6、带头结点的单链表head为空的判定条件是:

()

A).head==NULLB.)head->next==NULL

C)、.head->next==headD).head!

=NULL

7、在所有排序方法中,关键字的比较次数与记录的初始排列无关的是________。

A)Shell排序B)冒泡排序C.)直接插入排序D)直接选择排序

8、设有两个串p和q,求q在p中首次出现的位置的运算叫__________。

A).模式匹配B).求子串C.)定位D).查找

9、将长度为n的单链表链接到长度为m的单链表之后的算法的时间复杂度为(     )

A.)O(m)B.)O

(1)C.)O(n)D).O(m+n)

10、用线性探测法查找散列表,可能要探测多个散列地址,这些位置上的关键值()

A.)一定都是同义词B).一定都不是同义词

C).都相同D)不一定都是同义词

四、解答题 (30分)

1、对于给定的一组权值W={3,6,9,11,13,15,17,19}}画出Huffman树(要求结点左小右大),并给出每个结点的Huffman编码,计算该树的WPL。

(6分)

 

2、考虑下图:

(10分)

1)从顶点A出发,求它的深度优先生成树。

2)从顶点E出发,求它的广度优先生成树。

3)根据普里姆(Prim)算法,求它的最小生成树。

(从顶点A出发,要求给出计算过程)

 

3、已知待散列的线性表为(36,15,40,63,22),散列用的一维地址空间为[0..6],假定选用的散列函数是H(K)=K%7,若发生冲突采用线性探查法处理,试:

(1)计算出每一个元素的散列地址并在下图中填写出散列表;

(2)求出在查找每一个元素概率相等情况下的平均查找长度。

(6分)

0

1

2

3

4

5

6

 

4、对关键字序列(49,38,65,97,76,13,27,49)进行堆排序,使之按关键字非递增次序排列。

请写出排序过程中得到的初始堆和前二趟的序列状态。

(8分)

初始堆:

________

第1趟:

________

第2趟:

________

五、算法填空与设计(20分)

1、此为向以T为树根指针的二叉排序树上插入值为item的结点的递归算法。

(6分)

voidInsert(BiTree&T,ElemTypeitem)

{

if(T==NULL)

{p=(BiTree)malloc(sizeof(BiTNode));

p->data=item;

_______________________;

T=p;

}

elseif(item.keydata.key)___________________;

else________________________;

}

其中:

二叉树的存储结构为:

typedefstructBiTNode{

ElemTypedata;

StructBiTNode*lchild,*rchild;

}BiTNode,*Bitree;

2、以下运算实现在循环队上的入队列,请在________________处用适当句子予以填充。

(6分)

statusEnQueue(SqQueue&Q,QElemTypex)

//插入元素x为Q的新的队尾元素

{if((Q.rear+1)%MAXQSIZE==________________)

{error(“队满”);return(ERROR);}

else{________________;

______________________________;

return(OK);

}

}

其中循环队列存储结构为:

#defineMAXQSIZE100

typedefstruct{

QelemType*base;

intfront;

intrear;

}SqQueue;

3、已知一个线性表中的元素按元素值非递减有序排列,编写一个程序删除线性表中多余的值相同的元素,并返回删除后线性表的长度(8分)

 

一(每小题1分:

1.正确2、错误3、正确4、错误5、错误6、错误7正确、8、正确9、错误10、正确

二、每小题2分

1、集合、线性结构、图结构、树结构

2、O(nlogn)

3、27

4、2次

5、深度优先搜索,广度优先搜索

6、1、开放地址法2、再哈希法3、链地址法4、建立一个公共的溢出区

7、s->next=p->nextp->next=s;

8、CBDA

9、1/2N*(N-1)

10、8134249655579

三、每小题2分

AABBCBDAAD

四、1)

19:

009:

0103:

01106:

011111:

10013:

101

15:

11017:

111;

WPL=(19*2+9*3+3*4+6*4+11*3+13*3+15*3+17*3)=269

2、

1)(有多种答案)

2)(有多种答案)

3)(计算过程略)

3、

(1)H(36)=36%7=1

H(15)=15%7=1冲突H1(15)=(15+1)%7=2

H(40)=40%7=5

H(63)=63%7=0

H(22)=22%7=1冲突H1(22)=(22+1)%7=2冲突H2(22)=(22+2)%7=3

0

1

2

3

4

5

6

63

36

15

22

40

(2)平均查找长度=(1+2+1+1+3)/5=1.6

 

4、初始堆:

13,38,27,49,76,65,49,97

第一趟:

27,38,49,49,76,65,97,13

第二趟;38,49,49,97,76,65,27,13

五、

1)p->lchild=NULL;p->rchild=NULL;

2)Insert(T->lchild,item);3)Insert(T->rchild,item)

4)==Q.front5)Q.base[Q.rear]=e;6)Q.rear=(Q.rear+1)%MAXQSIZE;

3、(8分)

typedefstruct{

ElemType*elem;

intlength;

intlistsize;

}SqList;

intdel(SqList&A)

{

inti=0,j;

while(i<=A.length-1)

if(A.elem[i]!

=A.elem[i+1])i++;

else

{

for(j=i;j

A.length--;

}

returnA.length;

}

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1