云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 南邮通达2015数据结构B刷题试题及答案

南邮通达2015数据结构B刷题试题及答案

  • 62 次阅读
  • 3 次下载
  • 2025/5/30 11:43:51

数据结构试卷(一) .......................... 1 数据结构试卷(二) .......................... 5 数据结构试卷(三) .......................... 9 数据结构试卷(四) ........................ 13 数据结构试卷(五) ........................ 18 数据结构试卷(六) ........................ 22 数据结构试卷(七) ........................ 26 数据结构试卷(八) ........................ 29 数据结构试卷(九) ........................ 32 数据结构试卷(十) ........................ 35

数据结构试卷(一)参考答案 ......... 38 数据结构试卷(二)参考答案 ......... 40 数据结构试卷(三)参考答案 ......... 41 数据结构试卷(四)参考答案 ......... 44 数据结构试卷(五)参考答案 ......... 47 数据结构试卷(六)参考答案 ......... 49 数据结构试卷(七)参考答案 ......... 51 数据结构试卷(八)参考答案 ......... 52 数据结构试卷(九)参考答案 ......... 54 数据结构试卷(十)参考答案 ......... 55

数据结构试卷(一)

一、单选题(每题 2 分,共20分)

栈和队列的共同特点是( A )。

A.只允许在端点处插入和删除元素 B.都是先进后出 C.都是先进先出 D.没有共同点

1. 用链接方式存储的队列,在进行插入运算时( D ).

A. 仅修改头指针 B. 头、尾指针都要修改 C. 仅修改尾指针 D.头、尾指针可能都要修改 2. 以下数据结构中哪一个是非线性结构?( D )

A. 队列 B. 栈 C. 线性表 D. 二叉树

3. 设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示( C )。

A.688 B.678 C.692 D.696 4. 树最适合用来表示( C )。

A.有序数据元素 B.无序数据元素

C.元素之间具有分支层次关系的数据 D.元素之间无联系的数据 5. 二叉树的第k层的结点数最多为( D ).

A.2k-1 B.2K+1 C.2K-1 D. 2k-1

6. 若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( D )

A. 1,2,3 B. 9,5,2,3

1

C. 9,5,3 D. 9,4,2,3

7. 对n个记录的文件进行快速排序,所需要的辅助存储空间大致为( C ) A. O(1) B. O(n) C. O(1og2n) D. O(n2) 8. 对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有( D )个, A.1 B.2 C.3 D.4

9. 设有6个结点的无向图,该图至少应有( A )条边才能确保是一个连通图。

A.5 B.6 C.7 D.8

三、计算题(每题 6 分,共24分)

1. 在如下数组A中链接存储了一个线性表,表头指针为A [0].next,试写出该

线性表。

A 0 1 2 3 4 5 6 7

data 60 50 78 90 34 40 next 3 5 7 2 0 4 1

?0?1??1?1??0?线性表为:(78,50,40,60,34,90)

2. 请画出下图的邻接矩阵和邻接表。

1110??0101?1011??0101?1110??

2

3. 已知一个图的顶点集V和边集E分别为:V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15,

(3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25};

用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。

用克鲁斯卡尔算法得到的最小生成树为:

(1,2)3, (4,6)4, (1,3)5, (1,4)8, (2,5)10, (4,7)20 4.画出向小根堆中加入数据4, 2, 5, 8, 3时,每加入一个数据后堆的变化。见图12 2 4 4 2 2 2 2 图12 4 4 5 4 5 4 5 8 8 3

2

3 5

4 8 4.

图11

四、阅读算法(每题7分,共14分)

1. LinkList mynote(LinkList L)

{//L是不带头结点的单链表的头指针 if(L&&L->next){

q=L;L=L->next;p=L; S1: while(p->next) p=p->next; S2: p->next=q;q->next=NULL; }

return L; }

请回答下列问题:

(1)说明语句S1的功能;

查询链表的尾结点

(2)说明语句组S2的功能;

将第一个结点链接到链表的尾部,作为新的尾结点

(3)设链表表示的线性表为(a1,a2, ?,an),写出算法执行后的返回值所表示的线性表。

返回的线性表为(a2,a3,?,an,a1) 2. void ABC(BTNode * BT) {

if BT {

ABC (BT->left);

3

ABC (BT->right); cout<data<<' '; } }

该算法的功能是:

递归地后序遍历链式存储的二叉树 五、算法填空(共8分)

二叉搜索树的查找——递归算法:

bool Find(BTreeNode* BST,ElemType& item)

{

if (BST==NULL)

return false; //查找失败 else {

if (item==BST->data){

item=BST->data;//查找成功 return __ true __;} else if(itemdata)

return Find(___BST->left __,item); else return Find(____BST->right __,item); }//if }

六、编写算法(共8分)

统计出单链表HL中结点的值等于给定值X的结点数。 int CountX(LNode* HL,ElemType x) int CountX(LNode* HL,ElemType x) { int i=0; LNode* p=HL;//i为计数器 while(p!=NULL) { if (P->data==x) i++; p=p->next; }//while, 出循环时i中的值即为x结点个数 return i; }//CountX

4

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

数据结构试卷(一) .......................... 1 数据结构试卷(二) .......................... 5 数据结构试卷(三) .......................... 9 数据结构试卷(四) ........................ 13 数据结构试卷(五) ........................ 18 数据结构试卷(六) ........................ 22 数据结构试卷(七) ........................ 26 数据结构试卷(八) ........................ 29 数据结构试卷(九) ........................ 32 数据结构试卷(十) ........................ 35

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com