问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求下面数据结构试题的答案。。。

发布网友 发布时间:2022-04-23 08:43

我来回答

2个回答

热心网友 时间:2022-06-18 12:28

全国2008年10月高等教育自学考试

数据结构试题

课程代码:02331

一、单项选择题(本大题共15小题,每小题2分,共30分)

在每小题列出的四个备选项中只有一个是最符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

1.如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是( )

A. 栈 B. 队列

C. 树 D. 图

2.下面程序段的时间复杂度为( )

for (i=0; i<m; i++)

for (j=0; j<n; j++)

A[i][j]=i*j;

A. O (m2) B. O (n2)

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

3.在头指针为head的非空单循环链表中,指针p指向尾结点,下列关系成立的是( )

A. p->next==head B. p->next->next==head

C. p->next==NULL D. p==head

4.若以S和X分别表示进栈和退栈操作,则对初始状态为空的栈可以进行的栈操作系列是( )

A. SXSSXXXX B. SXXSXSSX

C. SXSXXSSX D. SSSXXSXX

5.两个字符串相等的条件是( )

A. 串的长度相等 B. 含有相同的字符集

C. 都是非空串 D. 串的长度相等且对应的字符相同

6.如果将矩阵An×n的每一列看成一个子表,整个矩阵看成是一个广义表L,即L=((a11,a21,…,an1),( a12,a22,…,an2),…,(a1n,a2n,…,ann)),并且可以通过求表头head和求表尾tail的运算求取矩阵中的每一个元素,则求得a21的运算是( )

A. head (tail (head (L))) B. head (head(head(L)))

C. tail (head (tail (L))) D. head (head (tail (L)))

7.已知一棵含50个结点的二叉树中只有一个叶子结点,则该树中度为1的结点个数为( )

A. 0 B. 1

C. 48 D. 49

8.在一个具有n个顶点的有向图中,所有顶点的出度之和为Dout ,则所有顶点的入度之和为( )

A. Dout B. Dout-1

C. Dout+1 D. n

9.如图所示的有向无环图可以得到的拓扑序列的个数是( )

A. 3 B. 4

C. 5 D. 6

10.如图所示的带权无向图的最小生成树的权为( )

A. 51 B. 52

C. 54 D. 56

11.对长度为n的关键字序列进行堆排序的空间复杂度为( )

A. O(log2n) B. O(1)

C. O(n) D. O(n*log2n)

12.已知用某种排序方法对关键字序列(51,35,93,24,13,68,56,42,77)进行排序时,前两趟排序的结果为

(35,51,24,13,68,56,42,77,93)

(35,24,13,51,56,42,68,77,93)

所采用的排序方法是( )

A. 插入排序 B. 冒泡排序

C. 快速排序 D. 归并排序

13.已知散列表的存储空间为T[0..18],散列函数H(key)=key%17,并用二次探测法处理冲突。散列表中已插入下列关键字:T[5]=39,T[6]=57和T[7]=7,则下一个关键字23插入的位置是( )

A. T[2] B. T[4]

C. T[8] D. T[10]

14.适宜进行批量处理的文件类型是( )

A. 顺序文件 B. 索引顺序文件

C. 散列文件 D. 多关键字文件

15.VSAM文件的索引结构为( )

A. B+树 B. 二叉排序树

C. B-树 D. 最优二叉树

二、填空题(本大题共10小题,每小题2分,共20分)

请在每小题的空格中填上正确答案。错填、不填均无分。

16.如果某算法对于规模为n的问题的时间耗费为T(n)=3n3,在一台计算机上运行时间为t秒,则在另一台运行速度是其64倍的机器上,用同样的时间能解决的问题规模是原问题规模的 倍。

17.将两个长度分别为m和n的递增有序单链表,归并成一个按元素递减有序的单链表,可能达到的最好的时间复杂度是 。

18.已知循环队列的存储空间大小为m,队头指针front指向队头元素,队尾指针rear指向队尾元素的下一个位置,则在队列不满的情况下,队列的长度是 。

19.字符串“sgabacbadfgbacst” 中存在有 个与字符串“ba”相同的子串。

20.假设以列优先顺序存储二维数组A[5][8],其中元素A[0][0]的存储地址为LOC(a00),且每个元素占4个存储单元,则数组元素A[i][j]的存储地址为 。

21.假设用<x,y>表示树的边(其中x是y的双亲),已知一棵树的边集为

,该树的度是 。

22.n个顶点且含有环路的无向连通图中,至少含有 条边。

23.在一般情况下用直接插入排序、选择排序和冒泡排序的过程中,所需记录交换次数最少的是 。

24.和二分查找相比,顺序查找的优点是除了不要求表中数据元素有序之外,对 结构也无特殊要求。

25.顺序文件中记录存放的物理顺序和 顺序一致。

三、解答题(本大题共4小题,每小题5分,共20分)

26.由森林转换得到的对应二叉树如图所示,写出原森林中第三棵树的前序序列和后序序列。

前序序列:

后序序列:

27.图的邻接表的类型定义如下所示:

#define MaxVertexNum 50

typedef struct node {

int adjvex;

struct node *next;

}EdgeNode;

typedef struct {

VertexType vertex;

EdgeNode *firstedge;

}VertexNode;

typedef VertexNode AdjList[MaxVertexNum];

typedef struct {

AdjList adjlist;

int n, e;

}ALGraph;

为便于删除和插入图的顶点的操作,可将邻接表的表头向量定义为链式结构,两种定义的存储表示实例如下图所示,请写出重新定义的类型说明。

题27图

28.某类物品的编号由一个大写英文字母及2位数字(0..9)组成,形如E32。运用基数排序

对下列物品编号序列进行按字典序的排序,写出每一趟(分配和收集)后的结果。

E13,A37,F43,B32,B47,E12,F37,B12

第一趟:

第二趟:

第三趟:

29.(1)画出对表长为13的有序顺序表进行二分查找的判定树;

(2)已知关键字序列为(12,14,16,21,24,28,35,43,52,67,71,84,99),写出在该序列中二分查找37时所需进行的比较次数。

(1)

(2)

四、算法阅读题(本大题共4小题,每小题5分,共20分)

30.已知线性表的存储结构为顺序表,阅读下列算法,并回答问题:

(1)设线性表L=(21,-7,-8,19,0,-11,34,30,-10),写出执行f30(&L)后的L状态;

(2)简述算法f30的功能。

void f30 (SeqList *L) {

int i,j;

for (i=j=0;i<L->length; i++)

if(L->data[i]>=0){

if(i!=j)L->data[j]=L->data[i];

j++;

}

L->length=j;

}

(1)

(2)

31.阅读下列算法,并回答问题:

(1)Q、Q1和Q2都是队列结构,设队列Q=(1,0,-5,2,-4,-6,9),其中1为队头元素,写出执行f31 (&Q,&Q1,&Q2)之后队列Q、Q1和Q2的状态;

(2)简述算法f31的功能。

(注:lnitQueue、EnQueue、DeQueue和QueueEmpty分别是队列初始化、入列、出队和判队空的操作)

void f31 (Queue*Q, Queue*Q1, Queue*Q2) {

int e;

lnitQueue (Q1);

lnitQueue (Q2);

while (!QueueEmpty (Q)) {

e=DeQueue (Q);

if (e>=0) EnQueue (Q1,e);

else EnQueue (Q2,e)

}

}

(1)

(2)

32.阅读下列算法,并回答问题:

(1)假设串由合法的英文字母和空格组成,并以’\0’作结束符。设串s=”⊔⊔|⊔am⊔a⊔⊔⊔student”(⊔表示空格符),写出f32(s)的返回值;

(2)简述算法f32的功能。

int f32 (char*s){

int i, n, inword;

n=inword=0;

for (i=0;s[i]!=’\0’;i++)

if (s[i]!=’⊔’&& inword==0){

inword=1;

n++;

}

else if (s[i]==’⊔’&& inword==1)

inword=0;

return n;

}

(1)

(2)

33.阅读下列对正整数关键字序列L操作的算法,并回答问题:

(1)设L=(28,19,27,49,56,12,10,25,20,50),写出f33 (L,4)的返回值;

(2)简述函数f33的功能。

int Partition (SeqList*L, int low, int high);

‖对L[low..high]做划分,返回基准记录的位置,并使左部的关键字

‖都小于或等于基准记录的关键字,右部的关键字都大于基准记录的关键字

int f33 (SeqList L, int k){

int low, high, pivotpos;

low=1;

high=L.length;

if (k<low || k>high)

return-1;

do {

pivotpos=Partition (&L, low, high);‖调用快速排序的划分算法

if (pivotpos<k)

low=pivotpos+1;

else if (pivotpos>k)

high=pivotpos-1;

}while (pivotpos!=k);

return L.data [pivotpos];

}

(1)

(2)

五、算法设计题(本题10分)

34.二叉排序树的类型定义如下:

typedef struct BSTNode {‖ 二叉排序树的结点结构

int data; ‖数据域

struct BSTNode *lchild, *rchild; ‖左、右孩子指针

}BSTNode,*BSTree;

设计递归算法,统计一棵二叉排序树T中值小于a的结点个数。

热心网友 时间:2022-06-18 12:29

7. (1)O(n*i)
(2)O(n平方) 由于不好打 只好用中文代替了.

8. 72
30 42
16 26
11 15
5 6 7 8
2 4
WPL=30*2+16*3+(5+7+8)*5+(2+4)*6=自己算吧
9.临接句阵:
0 1 1 1 0
1 0 0 0 1
1 0 0 0 1
1 0 0 0 1
0 1 1 1 0
临接表(单链表的格式: data next):
v1 -> v2 -> v3 -> v4 ^
v2 -> v1 -> v5 ^
v3 -> v1 -> v5 ^
v4 -> v1 -> v5 ^
v5 -> v2 -> v3 -> v4 ^
10 由于不好画图 就不答了.

就帮搂主答这几题了.太多了不想回答哈.....累喔 如果错了希望指出来喔
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
桑葚干直接吃还是泡水喝比较好桑葚干直接吃补肾吗 桑葚干泡水吃好还是干吃好 益智仁脑素神经酸片的功效与作用有哪些 黄冈师范学院师范专业有哪些 语文教育专业考研方向分析 黄冈师范学院语文教育专科毕业能拿教师资格证吗 php保留数字小数点后两位的方法 梦见被后咬 梦见母亲给赔鸡钱补了十二元的预兆 梦见门掉下来要二十五元修理费 数据结构考试题 怎么申请注销 谁有数据结构(C语言版)的期末上机试题 啊?跪求。。。 数据结构考试题,大二 怎么注销账号 数据结构考题 数据结构 考试题 数据结构试题库及答案 《数据结构》期末考试题及答案 能注销吗?怎么注销? 数据结构考试试题 数据结构期末题目,求帮助? 急需数据结构C语言版(清华大学出版社)的期末考试试题及答案 谁有数据结构的期末试题,借我参考下马上考试了 数据结构的试题 一个可以加多少好友 数据结构期末试卷&lt;解决给分,绝不食言,看结果还给追加分&gt; iphone8黑屏怎么办 苹果8黑屏应该怎么重启 哪里有数据结构期末考题? 苹果八P突然黑屏开不了机一直闪logo是怎么回事重启也没用? 数据结构考题? 怎样注销账号 怎样注销账号 可以注销吗?怎么注销? 怎么注销了 微信语音不能发了? 微信如何注销? 怎么注销? 海底捞可以用京东支付吗 亲属卡可以在海底捞消费吗 海底捞大学生优惠可以用现金吗 支付宝的超级学生码可以用海底捞支付吗? 海底捞可以远程付款吗 海底捞打折规则2022是什么? 去海底捞吃饭可不可以用花呗? 海底捞有哪些银行信用卡打折? 海底捞可以用信用卡和花呗吗? 蚂蚁花呗可以吃海底捞吗? 海底捞69折代付流程是什么? 海底捞可以用其他人的支付宝支付吗