2009年10月份全国自考数据结构试题及答案
2009年10月全国自考(计算机与网络技术基础)真题试卷(题后含答案及解析)

2009年10月全国自考(计算机与网络技术基础)真题试卷(题后含答案及解析)题型有:1. 单项选择题 2. 填空题 3. 名词解释 4. 简答题 5. 应用题单项选择题1.第一代电子计算机使用的电子元件是A.电子管B.晶体管C.小规模集成电路D.大规模集成电路正确答案:A2.美国标准信息交换码的英文简写是A.BCDB.BIG5C.ASCIID.EBCDIC正确答案:C3.C语言是A.机器语言B.汇编语言C.高级语言D.解释语言正确答案:C4.在Windows XP的控制面板中,可以快速安装程序的选项是A.性能和维护B.添加/删除程序C.辅助功能选项D.打印机和其他硬件正确答案:B5.在Windows XP中,要快速查找指定的文件或文件夹,可使用的命令是A.运行B.搜索C.收藏夹D.我的文档正确答案:B6.下列不属于按作用范围划分的计算机网络是A.广域网B.局域网C.城域网D.专用网正确答案:D7.传输信号的通道称为A.信息B.信道C.数据D.总线正确答案:B8.IPv4中,源地址或目的地址的长度为A.16位B.32位C.64位D.128位正确答案:B9.表示层的目的是处理有关被传送数据的A.表示问题B.应用问题C.传输问题D.同步问题正确答案:A10.网络通信结点的功能不包括A.主机接口功能B.交换功能C.监测功能D.数据处理功能正确答案:D11.数据链路层中继系统是A.网关B.桥接器C.路由器D.转发器正确答案:B12.下列不属于常见的网络互连设备的是A.网桥B.路由服务器C.协议变换器D.域名服务器正确答案:D13.用于网络规模大而网络数量小的是A.A类地址B.B类地址C.C类地址D.D类地址正确答案:A14.下列不属于当前流行的网络操作系统的是A.VINESB.NFSC.DOSD.NetWare正确答案:C15.Windows Server 2003系统的管理员账户是A.RootB.GuestC.AdministratorD.Super user正确答案:C16.Linux系统是A.单用户单任务B.单用户多任务C.多用户单任务D.多用户多任务正确答案:D17.RedHat Linux中的文件、目录复制命令是A.mvB.rmC.cpD.cd正确答案:C18.下列不属于防火墙体系结构的是A.被屏蔽主机体系结构B.被屏蔽子网体系结构C.双重宿主主机体系结构D.被屏蔽外网用户体系结构正确答案:D19.负责我国互联网域名和域名注册的机构是A.CNNICB.TCPC.OSID.IP正确答案:A20.电子邮件包括邮件头和A.邮件体B.发件人C.收件人D.发送时间正确答案:A填空题21.一个字节包含()位二进制。
自考数据结构02331历年试题及答案(2009--2018年(缺少2017年))

自考数据结构02331历年试题及答案(2009--2015个人整理版)全国2009年1月自学考试数据结构试题一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列程序段的时间复杂度为( )9 s=0;for(i=1;i<n ;i++) for(j=1;j<n ;j++) s+=i*j ; A.O(1) B.O(n)C.O(2n)D.O(n 2)2.假设某个带头结点的单链表的头指针为head ,则判定该表为空表的条件是( )22 A.head==NULL ; B.head->next==NULL ; C.head!=NULL ; D.head->next==head ;3.栈是一种操作受限的线性结构,其操作的主要特征是( )32 A.先进先出 B.后进先出 C.进优于出 D.出优于进4.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front 和rear 。
若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为( ) A.(rear-front-1)%n B.(rear-front)%n C.(front-rear+1)%n D.(rear-front+n)%n5.判断两个串大小的基本准则是( )52 A.两个串长度的大小 B.两个串中首字符的大小 C.两个串中大写字母的多少 D.对应的第一个不等字符的大小6.二维数组A[4][5]按行优先顺序存储,若每个元素占2个存储单元,且第一个元素A[0][0]的存储地址为1000,则数组元素A[3][2]的存储地址为( )60 A.1012 B.1017 C.1034 D.10367.高度为5的完全二叉树中含有的结点数至少为( )72 A.16 B.17 C.31 D.328.已知在一棵度为3的树中,度为2的结点数为4,度为3的结点数为3,则该树中的叶子结点数为( ) A.5 B.8 C.11 D.189.下列所示各图中是中序线索化二叉树的是( A)81A10.已知含6个顶点(v 0,v 1,v 2,v 3,v 4,v 5)的无向图的邻接矩阵如图所示,则从顶点v 0出发进行深度优先遍历可能得到的顶点访问序列为( )108 A.(v 0,v 1,v 2,v 5,v 4,v 3) B.(v 0,v 1,v 2,v 3,v 4,v 5) C.(v 0,v 1,v 5,v 2,v 3,v 4) D.(v 0,v 1,v 4,v 5,v 2,v 3)11.如图所示有向图的一个拓扑序列是( )a00a01 a02 a03 a04 a32A.ABCDEFB.FCBEADC.FEDCBAD.DAEBCF12.下列关键字序列中,构成大根堆的是( ) A.5,8,1,3,9,6,2,7 B.9,8,1,7,5,6,2,33 C.9,8,6,3,5,l ,2,7 D.9,8,6,7,5,1,2,313.对长度为15的有序顺序表进行二分查找,在各记录的查找概率均相等的情况下,查找成功时所需进行的关键字比较次数的平均值为( )172A.1539B.1549 C.1551 D.1555 14.已知一个散列表如图所示,其散列函数为H(key)=key %11,采用二次探查法处理冲突,则下一个插入的关键字49的地址为( D )d 19715.数据库文件是由大量带有结构的( )206 A.记录组成的集合 B.字符组成的集合 C.数据项组成的集合 D.数据结构组成的集合二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
2009年全国自考数据结构模拟试卷(三)及答案

2. 求下面算法中变量count的值:(假设n为2的乘幂,并且n>2)
int Time {int n count=0;x=2; while(x<n/2) {x*=2;count++; } return(count) } 答案:count=log2n
3. 以下程序段采用先根遍历方法求二叉树的叶子数,请在___处填充适当的语句。
更多试卷,请访问9州考苑()
2009年全国自考数据结构模拟试卷(三)
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项目中 只有一个是符号题目要求的,请将其代码填写的括号内.错选、多选或未选均无分。 1. 循环链表的主要优点是() A. 不再需要头指针了 B. 已知某个结点的位置后,能够容易找到它的直接前趋 C. 在进行插入、删除运算时,能更好地保证链表不断开 D. 从表中任一结点出发都能扫描到整个链表
答案:D
2. 在一个具有N个顶点的无向完全图中,包含的边的总数是() A. N(N-1)/2 B. N(N-1) C. N(N+1) D. N(N+1)/2
答案:A
3. 下面的程序在执行时,S语句共被执行了()次。
i=1; while (i<=n) {for(j=i;j<n;j++) { S; } i=i+1; }
A. B. C. D.
答案:A
A B C D
4. 已知一个向量的第一个元素的存储地址是100,每个元素的长度为2,则第6个元素的地址是
()
A. 120
更多试卷,请访问9州考苑()
B. 112 C. 110 D. 114
答案:C
5. 设二叉树有n个结点,则其深度为() A. n-1 B. n C. 5log2n」+1 D. 不确定
数据结构自考试题及答案

数据结构自考试题及答案一、单项选择题(每题1分,共10分)1. 在数据结构中,从逻辑上可以把数据结构分为()。
A. 动态结构和静态结构B. 线性结构和非线性结构C. 顺序结构和链式结构D. 内部结构和外部结构答案:B2. 线性表的顺序存储结构和链式存储结构相比,它的优点是()。
A. 存储密度大B. 存储密度小C. 插入和删除操作快D. 可以进行随机访问答案:D3. 下列关于栈的描述中,错误的是()。
A. 栈是先进后出(LIFO)的线性表B. 栈允许在一端进行插入和删除操作C. 栈是具有记忆功能的线性表D. 栈的插入和删除操作必须在栈顶进行答案:C4. 在二叉树的遍历过程中,若某结点的左子树为空,则该结点的左孩子直接与()相连。
A. 右孩子B. 右兄弟C. 父节点D. 子节点答案:C5. 哈希表的构造方式是()。
A. 数组B. 树C. 链表D. 图答案:A6. 在图的遍历过程中,深度优先搜索(DFS)和广度优先搜索(BFS)的主要区别在于()。
A. 遍历顺序B. 是否使用栈C. 是否使用队列D. 是否使用递归答案:C7. 快速排序算法的时间复杂度在最坏情况下是()。
A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C8. 以下排序算法中,时间复杂度为O(nlogn)的是()。
A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序答案:C9. 在数据库管理系统中,索引的作用是()。
A. 存储数据B. 提高查询效率C. 维护数据完整性D. 实现数据加密答案:B10. 以下不属于查找算法的是()。
A. 顺序查找B. 二分查找C. 哈希查找D. 归并排序答案:D二、填空题(每题2分,共20分)11. 在数据结构中,线性表的顺序存储结构通常使用___________来实现。
答案:数组12. 一个长度为n的顺序表,若在第i个位置插入一个元素(1≤i≤n+1),需要向后移动___________个元素。
(完整版)数据结构试题及答案

(完整版)数据结构试题及答案《数据结构》⾃考复习思考试题○10⼀、单项选择题(本⼤题共15⼩题,每⼩题2分,共30分)在每⼩题列出的四个备选项中只有⼀个是符合题⽬要求的,请将其代码填写在题后的括号内。
错选、多选或未选均⽆分。
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. 设主串长为n,模式串长为m(m≤n),则在匹配失败情况下,朴素匹配算法进⾏的⽆效位移次数为( )A. mB. n-mC. n-m+1D. n8. ⼆维数组A[12][18]采⽤列优先的存储⽅法,若每个元素各占3个存储单元,且第1个元素的地址为150,则元素A[9][7]的地址为( )A. 429B. 432.C. 435D. 4389. 对⼴义表L=((a,b),(c,d),(e,f))执⾏操作tail(tail(L))的结果是( )A. (e,f)B. ((e,f))C. (f)D. ( )10. 下列图⽰的顺序存储结构表⽰的⼆叉树是( )11. n个顶点的强连通图中⾄少含有( )A. n-1条有向边B. n条有向边C. n(n-1)/2条有向边D. n(n-1)条有向边12. 对关键字序列(56,23,78,92,88,67,19,34)进⾏增量为3的⼀趟希尔排序的结果为( )A. (19,23,56,34,78,67,88,92)B. (23,56,78,66,88,92,19,34)C. (19,23,34,56,67,78,88,92)D. (19,23,67,56,34,78,92,88)13. 若在9阶B-树中插⼊关键字引起结点分裂,则该结点在插⼊前含有的关键字个数为( ) A. 4 B. 5C. 8D. 914. 由同⼀关键字集合构造的各棵⼆叉排序树( )A. 其形态不⼀定相同,但平均查找长度相同B. 其形态不⼀定相同,平均查找长度也不⼀定相同C. 其形态均相同,但平均查找长度不⼀定相同.D. 其形态均相同,平均查找长度也都相同15. ISAM⽂件和VSAM⽂件的区别之⼀是( )A. 前者是索引顺序⽂件,后者是索引⾮顺序⽂件B. 前者只能进⾏顺序存取,后者只能进⾏随机存取C. 前者建⽴静态索引结构,后者建⽴动态索引结构D. 前者的存储介质是磁盘,后者的存储介质不是磁盘⼆、填空题(本⼤题共10⼩题,每空2分,共20分)16. 数据的逻辑结构在计算机存储器内的表⽰,称为数据的____________。
2009年10月全国自考数据结构真题及答案

更多优质自考资料尽在百度贴吧自考乐园俱乐部(/club/5346389)欢迎❤加入...欢迎❤交流...止不住的惊喜等着你.........2009年10月全国自考数据结构真题一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.按值可否分解,数据类型通常可分为两类,它们是()A.静态类型和动态类型B.原子类型和表类型C.原子类型和结构类型D.数组类型和指针类型答案:C2.A. AB. BC. CD. D答案:C3.指针p、q和r依次指向某循环链表中三个相邻的结点,交换结点*q和结点*r在表中次序的程序段是()A.p->next=r;q->next=r->next;r->next=q;B.p->next=r;r->next=q;q->next=r->next;C.r->next=q;q->next=r->next;p->next=r;D.r->next=q;p->next=r;q->next=r->next;答案:A4.若进栈次序为a,b,c,且进栈和出栈可以穿插进行,则可能出现的含3个元素的出栈序列个数是()A. 3B. 5C. 6D.7答案:B5.假设以数组A[n]存放循环队列的元素,其头指针front指向队头元素的前一个位置、尾指针rear指向队尾元素所在的存储位置,则在少用一个元素空间的前提下,队列满的判定条件为()A.rear==frontB.(front+1)%n==rearC.rear+1==frontD.(rear+1)%n==front答案:D6.串的操作函数str定义为:A. 3B. 4C. 5D. 6答案:C7.二维数组A[10][6]采用行优先的存储方法,若每个元素占4个存储单元,已知元素A[3][4]的存储地址为1000,则元素A[4][3]的存储地址为()A.1020B.1024C.1036D.1240答案:A8.对广义表L= (a,())执行操作tail(L)的结果是()A.()B.(())C. aD.(a)答案:B9.已知二叉树的中序序列和后序序列均为ABCDEF,则该二叉树的先序序列为()A.FEDCBAB.ABCDEFC.FDECBAD.FBDCEA答案:A10.已知森林F={T1,T2,T3,T4,T5},各棵树Ti(i=1,2,3,4,5)中所含结点的个数分别为7,3,5,1,2,则与F对应的二叉树的右子树中的结点个数为()A. 2B. 3C.8D.11答案:D11.若非连通无向图G含有21条边,则G的顶点个数至少为()A.7B.8C.21D.22答案:B12.如图所示的有向图的拓扑序列是()A.c,d,b,a,eB.c,a,d,b,eC.c,d,e,a,bD.c,a,b,d,e答案:B13.对关键字序列(6,1,4,3,7,2,8,5)进行快速排序时,以第1个元素为基准的一次划分的结果为()A.(5,1,4,3,6,2,8,7)B.(5,1,4,3,2,6,7,8)C.(5,1,4,3,2,6,8,7)D.(8,7,6,5,4,3,2,1)答案:C14.分块查找方法将表分为多块,并要求()A.块内有序B.块间有序C.各块等长D.链式存储答案:B15.便于进行布尔查询的文件组织方式是()A.顺序文件B.索引文件C.散列文件D.多关键字文件答案:二、填空题(本大题共10小题,每小题2分,若有两个空格,每个空格1分,共20分)请在每个空格中填上正确答案。
自考02331数据结构真题及答案(2009-2018)

自考02331数据结构真题及答案(2009-2018)自考02331数据结构真题及答案(2009-2018)数据结构是计算机科学与技术领域中的一门基础课程,通过研究数据的组织、存储和管理方式,以及不同数据结构之间的相互关系和运算方法,提高算法效率和问题解决能力。
在自考02331数据结构课程中,真题及其答案对于学生来说是很重要的复习资料。
本文将提供自考02331数据结构真题及答案的综合整理,希望对广大自考学子的备考有所帮助。
一、2009年自考02331数据结构真题及答案1. (1) 数据除了数值外还可以是什么类型的?答:数据除了数值类型外还可以是字符型、字符串型、布尔型等。
(2) 数据的逻辑结构和物理结构分别指什么?答:数据的逻辑结构指数据之间的关系及其运算规律,如线性结构、树形结构、图形结构等;数据的物理结构指数据在计算机内存中的存储方式,如顺序存储、链式存储等。
2. 用C语言编写一个递归函数,计算n的阶乘。
答:以下是一个计算n的阶乘的递归函数的C语言代码:```cint factorial(int n) {if(n == 0 || n == 1) {return 1;}return n * factorial(n-1);}```二、2018年自考02331数据结构真题及答案1. 请给出二叉树的定义,并用C语言实现二叉树的结点结构。
答:二叉树是一种特殊的树结构,每个结点最多有两个子结点。
以下是用C语言实现二叉树结点结构的代码:```ctypedef struct BinaryNode {int data; // 结点存储的数据struct BinaryNode* left; // 左子结点指针struct BinaryNode* right; // 右子结点指针} BinaryNode;```2. 请解释线性表的顺序存储和链式存储,并分别给出其对应的存储结构。
答:线性表是一种数据元素之间存在一对一关系的数据结构。
学历类《自考》自考专业(计算机网络)《数据结构》考试试题及答案解析

学历类《自考》自考专业(计算机网络)《数据结构》考试试题及答案解析姓名:_____________ 年级:____________ 学号:______________1、已知10×12的二维数组A,按“行优先顺序”存储,每个元素占1个存储单元,已知A[1][1]的存储地址为420,则A[5][5]的存储地址为( )。
A、470B、471C、472D、473正确答案:C答案解析:暂无解析2、广义表A=(a,B,(a,B,(a,B,⋯⋯)))的长度为( )。
A、1B、2C、3D、无限值正确答案:C答案解析:暂无解析3、队列的特点是( )。
A、允许在表的任何位置进行插入和删除B、只允许在表的一端进行插入和删除C、允许在表的两端进行插入和删除D、只允许在表的一端进行插入,在另一端进行删除正确答案:D答案解析:暂无解析4、设栈的初始状态为空,入栈序列为1,2,3,4,5,6,若出栈序列为2,4,3,6,5,1,则操作过程中栈中元素个数最多时为( )。
A、2个B、3个C、4个D、6个正确答案:C答案解析:暂无解析5、指针p1和p2分别指向两个无头结点的非空单循环链表中的尾结点,要将两个链表链接成一个新的单循环链表,应执行的操作为( )。
A、p1->next=p2->next;p2->next=p1->nextB、p2->next=p1->next;p1->next=p2->nextC、p=p2->next;p1->next=p;p2->next=p1->nextD、p=p1->next;p1->next=p2->next;p2->next=p正确答案:D答案解析:暂无解析6、在一个长度为n的顺序表中插入一个元素的算法的时间复杂度为( )。
A、O(1)B、O(logn)C、O(n)D、O(n²)正确答案:C答案解析:暂无解析7、在数据的逻辑结构中,树结构和图结构都是( )。
A、非线性结构B、线性结构C、动态结构D、静态结构正确答案:A答案解析:暂无解析8、若需高效地查询多关键字文件,可以采用的文件组织方式为( )。
自考数据结构考试题及答案

自考数据结构考试题及答案一、选择题1. 在数据结构中,算法的复杂度主要分为哪两大类?A. 时间复杂度和空间复杂度B. 逻辑复杂度和物理复杂度C. 内部复杂度和外部复杂度D. 静态复杂度和动态复杂度答案:A2. 一个长度为n的顺序表中,删除第i个元素(1≤i≤n)时,需要移动的元素个数为?A. iB. n-iC. n-i+1D. i-1答案:C3. 下列关于队列的描述中,哪一项是错误的?A. 队列是一种先进先出(FIFO)的线性表B. 队列的插入操作称为入队C. 队列的删除操作称为出队D. 队列可以在两端进行插入和删除操作答案:D4. 在二叉搜索树中,若某节点的左子树上所有节点的关键字均小于该节点的关键字,则该节点的关键字一定大于其右子树上所有节点的关键字,这种说法是:A. 正确B. 错误答案:A5. 哈希表的冲突可以通过哪些方法来解决?A. 链接法B. 开放寻址法C. 表格扩容D. 所有以上方法答案:D二、简答题1. 什么是递归?请举例说明其在数据结构中的应用。
递归是一种在程序设计中常用的方法,它允许函数调用自身。
递归的应用非常广泛,尤其是在数据结构的算法实现中。
例如,在遍历二叉树时,可以使用递归算法来实现前序、中序、后序遍历。
递归通常涉及两个关键部分:基本情况(递归结束的条件)和递归步(函数自我调用以减小问题规模)。
2. 请简述图的遍历算法中的深度优先搜索(DFS)和广度优先搜索(BFS)的区别。
深度优先搜索(DFS)和广度优先搜索(BFS)是两种基本的图遍历算法。
DFS从一个顶点开始,沿着一条路走到尽头,当无法继续前进时,回溯并沿着其他路径继续搜索。
它通常使用栈来实现,可以是显式的栈或隐式的栈(递归)。
而BFS则从一个顶点开始,逐层遍历图中的所有顶点,即先访问起始顶点的所有邻接顶点,再访问邻接顶点的邻接顶点,依此类推。
BFS通常使用队列来实现。
三、计算题1. 给定一个单链表,设计一个算法,将链表中的所有节点逆序。
2009年全国自考数据结构模拟试卷(四)及答案

2009年全国自考数据结构模拟试卷(四)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项目中只有一个是符号题目要求的,请将其代码填写的括号内.错选、多选或未选均无分。
1. 设矩阵A(aij,1≤i,j≤10)的元素满足:aij≠0(i≥j,1≤i,j≤10)aij=0(i<j,1≤i,j≤10)现将A的所有非0元素以行序为主序存放在首地址为2000的存储区域中,每个元素占4个单元,则元素[9,5]的首地址为()A. 2160B. 2164C. 2336D. 2340答案:A2. 具有12个记录的序列,采用冒泡排序最少的比较次数是()A. 1B. 144C. 11D. 66答案:C3. 在一棵具有5层的满二叉树中,结点总数为()个。
A. 33B. 32C. 31D. 30答案:C4. 下面程序的时间复杂性是()for(i=1;i<=n;i++)for(j=1;j<=m;j++){A[i][j]=i*j;}A. AC. CD. D答案:C5. 从具有n个结点的单链表中查找值等于x的结点时,在查找成功的情况下,平均需比较()个结点。
A. nB. n/2C. (n-1)/2D. (n+1)/2答案:D6. 在一个链队列中,若f,r分别为队首、队尾指针,则插入s所指结点的操作为()A. f->next=c;f=s;B. r->next=s;r=s;C. s->next=r;r=sD. s->next=f,f=s;答案:B7. 设散列函数为H(k)=k mod7,一组关键码为23,14,9,6,30,12和18,散列表T的地址空间为0.6,用线性探测法解决冲突,依次将这组关键码插入T中,得到的散列表为()A. AB. BC. C8. 邻接表存储结构下图的深度优先遍历算法结构类似于二叉树的()A. 先序遍历B. 中序遍历C. 后序遍历D. 按层遍历答案:A9. 在单链表中,删除p所指结点的直接后继的操作是()A. p->next=p->next->next;B. p=p->next;p->next=p->next->next;C. p->next=p->next;D. p=p->next->next;答案:A10. 设计一个判别表达式中左、右括号是否配对出现的算法,采用()数据结构最佳。
2009年全国自考数据结构模拟试卷(二)及答案

2009年全国⾃考数据结构模拟试卷(⼆)及答案2009年全国⾃考数据结构模拟试卷(⼆)⼀、单项选择题(本⼤题共15⼩题,每⼩题2分,共30分)在每⼩题列出的四个备选项⽬中只有⼀个是符号题⽬要求的,请将其代码填写的括号内.错选、多选或未选均⽆分。
1. 如果要求⼀个线性表适应动态变化的要求,⼜必须能尽快地进⾏查找,则可以选择采⽤()查找⽅法。
A. 分块B. ⼆分C. 顺序D. 散列答案:A2. ()⽅法是对序列中的元素通过适当的位置交换将有关元素⼀次性地放置在其最终位置上。
A. 归并排序B. 插⼊排序C. 快速排序D. 选择排序答案:C3. 在⼀个单链表中,已知q所指结点是p所指结点的直接前趋,若在p,q之间插⼊s结点,则执⾏()操作。
A. s->next=p->next;p->next=s;B. q->next=s;s->next=p;C. p->next=s->next;s->next=p;D. p->next=s;s->next=q;答案:B4. 考虑下列四种排序⽅法,在排序过程中,关键码⽐较的次数与记录的初始排列顺序⽆关的是()A. 直接插⼊排序和快速排序B. 快速排序和归并排序C. 直接选择排序和归并排序D. 直接插⼊排序和归并排序答案:C5. 将上万个⼀组⽆序并且互不相等的正整数序列,存放于顺序存储结构中,采⽤()⽅法能够最快地找出其中最⼤的正整数。
A. 快速排序B. 插⼊排序6. 带头结点的单链表head为空的判断条件是()A. head=NULLB. head->next=NULLC. head->next=headD. head!=NULL答案:B7. 在⼀⾮空⼆叉树的中序遍历序列中,根结点的右边()A. 只有右⼦树上的所有结点B. 只有右⼦树上的部分结点C. 只有左⼦树上的所有结点D. 只有左⼦树上的部分结点答案:A8. 散列表的⽬的是()A. 插⼊B. 删除C. 快速查找D. 排序答案:C9. 快速排序在最坏情况下的时间复杂度是()A. AB. BC. CD. D答案:B10. 设有⼀个⽆向图G=(V,E)和G′=(V′,E′),如果G′是G的⽣成树,则下⾯不正确的说法是()A. G′为G的⼦图B. G′为G的连通分量C. G′为G的极⼩连通⼦图且V′=VD. G′是G的⼀个⽆环⼦图答案:B11. 下⾯四种排序⽅法中,平均查找长度最⼩的是()D. 归并排序答案:C12. 已知⼀个单链表中有3000个结点,每个结点存放⼀个整数,()可⽤于解决这3000个整数的排序问题且不需要对算法作⼤的变动。
2009年全国自考数据结构模拟试卷(八)及答案

2. 对无向图,其邻接矩阵是一个关于___对称的矩阵。
答案:主对角线
3. 在线性表的顺序存储中,假设每个结点所占用的存储空间为c,且第一个单元的存储地址则
是该结点的存储地址,设开始结点a1的存储地址是下式得到___。 答案:LOC(a1)=LOC(a1)+(i-1)*c
答案:C
4. 在下面的排序方法中,属于不稳定的排序方法的是() A. 直接插入排序 B. 冒泡法排序 C. 堆排序 D. 归并排序
答案:C
5. 如果我们采用二分查找法查找一个长度为n的有序表,则查找每个元素的平均比较次数()对
应的判定树的高度(假设树高h≥2)。
更多试卷,请访问9州考苑()
答案:D
A B C D
8. 与其他查找方法相比,哈希查找法的特点是() A. 通过关键字比较进行查找 B. 通过关键字计算记录存储地址进行查找 C. 通过关键字计算记录存储地址,并进行一定的比较进行查找 D. 通过关键字记录数据进行查找
答案:C
9. 顺序查找法适用于存储结构为()的线性表。 A. 散列存储 B. 压缩存储 C. 顺序存储或链接存储 D. 索引存储
7. 计算机软件系统中,有两种处理字符串长度的方法:一种是采用___,第二种是___。
答案:固定长度 设置长度指针
8. 设线性表(a1,a2,…,a500)元素的值由小到大排列。对
一个给定的k值,用二分法检索查找表中与k相等的元素,在检索不成功的情况下,至多需比较 ___次。 答案:9
9. 对于一个具有n条边和e个顶点的图来说,如果采用邻接表表示,则其空间复杂度为___,若
4. 假设有下面所示的稀疏矩阵,请写出其三元组表(按行优先的顺序)。
自考02331数据结构真题及答案(2009-2018)

if ( ! visited[p -> adjvex] )
DFS( G, p - > adjvex) ;
p = p->next;
}
}
}
void f32 ( ALGraph * G) {
int i;
for (i = 0; i < G->n; i ++)
visited [ i ] = FALSE ;
A.先进先出B.后进先出
C.进优于出D.出优于进
4.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front和rear。若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为( )
A.(rear-front-1)%nB.(rear-front)%n
(1)(1+8)*8/2=36 存放次对角线以上的零为37
(2)12
27.对关键字序列(5,8,1,3,9,6,2,7)按从小到大进行快速排序。
(1)写出排序过程中前两趟的划分结果;
(2)快速排序是否是稳定的排序方法?
(1)
第一趟划分结果;(2,3,1),5,(9,6,8,7)
第二趟划分结果;(1,2,3),5,(9,6,8,7)
if ((2)) {R[k].key<R[k-l].key
t = R[k];
R[k] = R[k-1];
R[k-1] = t;
}
(3);i++
}
}
(1)
(2)
(3)
五、算法设计题(本大题10分)
34.假设以带头结点的单链表表示线性表,单链表的类型定义如下:
全国自考数据结构历年试题及部分答案(2009--2013)

全国2009年1月高等教育自学考试数据结构试题 课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列程序段的时间复杂度为( )9 s=0;for(i=1;i<n ;i++) for(j=1;j<n ;j++) s+=i*j ; A.O(1) B.O(n)C.O(2n)D.O(n 2)2.假设某个带头结点的单链表的头指针为head ,则判定该表为空表的条件是( )22 A.head==NULL ; B.head->next==NULL ; C.head!=NULL ; D.head->next==head ;3.栈是一种操作受限的线性结构,其操作的主要特征是( )32 A.先进先出 B.后进先出 C.进优于出 D.出优于进4.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front 和rear 。
若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为( ) A.(rear-front-1)%n B.(rear-front)%n C.(front-rear+1)%n D.(rear-front+n)%n5.判断两个串大小的基本准则是( )52 A.两个串长度的大小 B.两个串中首字符的大小 C.两个串中大写字母的多少 D.对应的第一个不等字符的大小6.二维数组A[4][5]按行优先顺序存储,若每个元素占2个存储单元,且第一个元素A[0][0]的存储地址为1000,则数组元素A[3][2]的存储地址为( )60 A.1012 B.1017 C.1034 D.10367.高度为5的完全二叉树中含有的结点数至少为( )72 A.16 B.17 C.31 D.328.已知在一棵度为3的树中,度为2的结点数为4,度为3的结点数为3,则该树中的叶子结点数为( ) A.5 B.8 C.11 D.189.下列所示各图中是中序线索化二叉树的是( )81A10.已知含6个顶点(v 0,v 1,v 2,v 3,v 4,v 5)的无向图的邻接矩阵如图所示,则从顶点v 0出发进行深度优先遍历可能得到的顶点访问序列为( )108 A.(v 0,v 1,v 2,v 5,v 4,v 3)a00 a01 a02 a03 a04 a32B.(v 0,v 1,v 2,v 3,v 4,v 5)C.(v 0,v 1,v 5,v 2,v 3,v 4)D.(v 0,v 1,v 4,v 5,v 2,v 3)11.如图所示有向图的一个拓扑序列是( )A.ABCDEFB.FCBEADC.FEDCBAD.DAEBCF12.下列关键字序列中,构成大根堆的是( ) A.5,8,1,3,9,6,2,7 B.9,8,1,7,5,6,2,33 C.9,8,6,3,5,l ,2,7 D.9,8,6,7,5,1,2,313.对长度为15的有序顺序表进行二分查找,在各记录的查找概率均相等的情况下,查找成功时所需进行的关键字比较次数的平均值为( )172A.1539B.1549 C.1551 D.1555 14.已知一个散列表如图所示,其散列函数为H(key)=key %11,采用二次探查法处理冲突,则下一个插入的关键字49的地址为( )d 19715.数据库文件是由大量带有结构的( )206 A.记录组成的集合 B.字符组成的集合 C.数据项组成的集合 D.数据结构组成的集合二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
10月自考数据结构02331试题及答案解析

10月自考数据结构02331试题及答案解析10月自考数据结构02331试题及答案解析lO月高等教育自学考试全国统一命题考试数据结构试卷(课程代码02331)本试卷共8页。
满分l00分。
考试时间l50分钟。
考生答题注意事项:1.本卷所有试题必须在答题卡上作答。
答在试卷上无效,试卷空白处和背面均可作草稿纸. 2.第一部分为选择题。
必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。
3.第二部分为非选择题。
必须注明大、小题号,使用0.5毫米黑色字迹签字笔作答。
4.合理安排答题空间.超出答题区域无效。
第一部分选择题一、单项选择题(本大题共l5小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。
未涂、错涂或多涂均无分。
1.下列选项中,不属于线性结构的是A.网 B.栈 C.队列D.线性表2.长度为n的顺序表,删除位置i上的元素(0≤i≤n一1),需要移动的元素个数为A.n—i B.n—i—l C.i D.i+13.栈采用不同的存储方式时,下列关于出栈过程的叙述中,正确的是A.顺序栈需要判定栈空,链栈也需要判定B.顺序栈需要判定栈空,而链栈不需要判定C.顺序栈不需要判定栈空,而链栈需要判定D.顺序栈不需要判定栈空,链栈也不需要判定4.若一个栈以数组V[0..n-1]存储,初始栈顶指针top为n,则x入栈的正确操作是A.top=top+1;V[top]=x B.V[top]=x;top=top+1 C.top=top一1;V[mp]=x D.V[top]=x;top=top—l 5.在二维数组a[9][10]中:每个数组元素占用3个存储空间,从首地址SA开始按行优先连续存放,则元素a[8][5]的起始地址是A.SA+141 B.SA+144 C.SA+222 D.SA+2556.广义表A=(x,((y),((a)),A))的深度是A.2 B.3 C.4 D.∞7.一棵左子树为空的二叉树在前序线索化后,其空指针域个数为A.0 B.1 C.2 D.不确定8.下列关于哈夫曼树的叙述中,错误的是A.用n个结点构造的哈夫曼树是唯一的B.哈夫曼树中只有度为0或度为2的结点C.树中两个权值最小的结点可能是兄弟结点D.同一结点集构造的二叉树中,哈夫曼树的WPL最小9.6个顶点的强连通图中,含有的边数至少是A.4 B.5 C.6 D.710.对题l0图进行深度优先搜索遍历,下列选项中,正确的遍历序列是12.有向图采用邻接矩阵存储,某一行中非零元素的个数等于A.对应顶点v的度B.对应顶点v的出度C.对应顶点v的入度D.依附于对应顶点v的边数13.下列选项中,符合堆定义的是A.{102,24,55,60,89,93}B.{24,89,55,60,93,102}C.{102,93,55,60,89,24}D.{102,60。
2009年全国自考数据结构模拟试卷(七)及答案

答案:B
8. 顺序存储结构() A. 仅适合于静态查找表的存储 B. 仅适合于动态查找表的存储 C. 既适合静态又适合动态查找表的存储 D. 既不适合静态ຫໍສະໝຸດ 不适合动态查找表的存储答案:C
9. C语言数组Data[m+1]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针
答案:B
6. 在下面的排序方法中,不需要通过比较关键字就能进行排序的是()
更多试卷,请访问9州考苑()
A. 箱排序 B. 快速排序 C. 插入排序 D. 希尔排序
答案:A
7. 如果二叉树中任何一个结点的值都小于它的左子树上所有结点的值而大于右子树上所有结
点的值,要得到各结点值的递增序列,应按下列哪种次序排列结点()
3. ___的邻接矩阵不一定是不对称的。
答案:有向图
更多试卷,请访问9州考苑()
4. 当所有结点的权值都相等时,用这些结点构造的二叉排序树上只有___。
答案:右子树
5. 在具有n个单元的循环队列中,队满时共有___个元素。
答案:n-1
6. 对于数组,通常具有的基本操作有___种,它们分别是___。
更多试卷,请访问9州考苑()
2009年全国自考数据结构模拟试卷(七)
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项目中 只有一个是符号题目要求的,请将其代码填写的括号内.错选、多选或未选均无分。
1. 下面的查找方式中,可以对无序表进行查找的是() A. 顺序查找 B. 二分查找 C. 二叉排序树 D. B-树上的查找
答案:A
2. 下面关于线性表的叙述错误的是() A. 线性表采用顺序存储,必须占用一片连续的存储单元 B. 线性表采用顺序存储,便于进行插入和删除操作 C. 线性表采用链接存储,不必占用一片连续的存储单元 D. 线性表采用链接存储,不便于插入和删除操作
数据结构自考试题

B . p ->next = q ->next ; q = p ->next ;
C . q ->next = p ->next; p ->next = q ;
D . p ->next = q ; q ->next = p->next ;
B7.具有n个顶点的有向图最多有( )条边.
A.n B.n(n-1) C n(n+1) D. n2
C10.假设一棵完全二叉树按层次遍历的顺序依次存放在数组BT[m]中,其中根结点存放在BT[0],若BT[i]中的结点有左孩子,则左孩子存放在( )
A.BT[i/2] B.BT[2*i-1] C.BT[2*i] D.BT[2*i+1]
C. pl -> next = p2 -> next;free ( p2 ); D. pl = p2 -> next ; free ( p2) ;
B6.假设S=〃I AM A STUDENT〃,则运算substr(S,4,8)的结果为( )
A.〃M A S〃B.〃M A STUD〃C.〃A STUDEN〃D.〃STUD〃
稳定算法:在排序算法中关键字相同的记录在排序前后不改变排列的位置成为稳定的排序,否则称为不稳定的排序
10.设数据元素关键字序列为{475, 137, 481, 219, 382, 674, 350, 326, 815, 506},分别写出执行下列排序算法时,各趟排序后的关键字序列:
(1)冒泡排序(2)基数排序
A3.在具有n个结点的单链表中,实现___的操作,其算法的时间复杂度都是O(n)。
全国2009年10月自学考试数据库系统原理试题及答案

全国2009年10⽉⾃学考试数据库系统原理试题及答案全国2009年10⽉⾃学考试数据库系统原理试题课程代码:04735⼀、单项选择题(本⼤题共15⼩题,每⼩题2分,共30分)在每⼩题列出的四个备选项中只有⼀个是符合题⽬要求的,请将其代码填写在题后的括号内。
错选、多选或未选均⽆分。
1.数据库系统的核⼼组成部分是( ) A.DB B.DD C.DBAD.DBMS2.数据库的最⼩存取单位是( ) A.字符 B.数据项 C.记录D.⽂件3.数据库应⽤程序的编写是基于三级模式结构中的( ) A.外模式 B.逻辑模式 C.内模式D.概念模式4.完成关系模式设计是在数据库设计的( ) A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段D.物理设计阶段5.下列关于外键的说法正确的是( ) A.外键必须和相应的主键同名 B.外键值不允许为空C.外键和相应的主键可以不同名,只要定义在相同域上即可D.外键的取值只允许等于所参照关系中某个主键值 6.关系模式设计理论主要解决的问题是() A.提⾼查询速度B.消除操作异常和数据冗余C.减少数据操作的复杂性D.保证数据的安全性和完整性 7.设有关系R (A ,B ,C )和S (A ,D )则与R S 等价的关系代数表达式是() A.RSB.S)(R D C,B,R.A,?∏C.A .S ,A .R =σ)S R (?)D.S))(R (S.A R.A D C,B,R.A,?∏=σ8.设有关系模式R (A ,B ,C ),其关系r 如下表所⽰:下⾯叙述正确的是()A.函数依赖A→B在上述关系中成⽴B.函数依赖BC→A在上述关系中成⽴C.函数依赖B→A在上述关系中成⽴D.函数依赖A→BC在上述关系中成⽴9.设有关系R和S如下表所⽰,则R S的值是()A. B.C. D.10.SQL语⾔是()A.⾼级⾔语B.汇编语⾔C.结构化查询语⾔D.宿主语⾔11.在SQL中,与“NOT IN”等价的操作符是()A.<>ALLB.<>SOMEC.= SOMED.= ALL12.关于事务的故障与恢复,下列说法正确的是()A.事务⽇志⽤来记录事务执⾏的频度B.任何故障的恢复都由系统⾃动完成C.系统故障的恢复只需进⾏REDO操作D.对⽇志⽂件设置检查点是为了提⾼故障恢复的效率13.下列不属于...并发操作带来的问题是( )A.丢失更新B.读脏数据C.不可重复读D.死锁1.4.在⼦类之间的语义约束中,表⽰超类中的对象必须在⼦类中出现的是( )A.Overlapping/doc/8121e165783e0912a2162a0c.html pleteC.DisjointD.Imcomplete15.在对象联系图中,双向箭头(←→)表⽰( ) A.属性值是单值B.属性值是多值C.对象类型之间的联系D.两个属性之间值的联系⼆、填空题(本⼤题共10⼩题,每⼩题1分,共10分)请在每⼩题的空格上填上正确答案。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国2009年10月高等教育自学考试数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.按值可否分解,数据类型通常可分为两类,它们是()A.静态类型和动态类型B.原子类型和表类型C.原子类型和结构类型D.数组类型和指针类型2.对于三个函数f(n)=2008n3+8n2+96000,g(n)=8n3+8n+2008和h(n)=8888nlogn+3n2,下列陈述中不.成立的是()A.f(n)是0(g(n)) B.g(n)是0(f(n))C.h(n)是0(nlogn) D.h(n)是0(n2)3.指针p、q和r依次指向某循环链表中三个相邻的结点,交换结点*q和结点*r在表中次序的程序段是()A.p->next=r;q->next=r->next;r->next=q;B.p->next=r;r->next=q;q->next=r->next;C.r->next=q;q->next=r->next;p->next=r;D.r->next=q;p->next=r;q->next=r->next;4.若进栈次序为a,b,c,且进栈和出栈可以穿插进行,则可能出现的含3个元素的出栈序列个数是()A.3 B.5C.6 D.75.假设以数组A[n]存放循环队列的元素,其头指针front指向队头元素的前一个位置、尾指针rear指向队尾元素所在的存储位置,则在少用一个元素空间的前提下,队列满的判定条件为()A.rear= =front B.(front+1)%n= =rearC.rear+1= =front D.(rear+1)%n= =front6.串的操作函数str定义为:int str(char*s) {char *p=s;while (*p!=′\0′)p++;return p-s;}则str(″abcde″)的返回值是()A.3 B.4C.5 D.67.二维数组A[10][6]采用行优先的存储方法,若每个元素占4个存储单元,已知元素A[3][4]的存储地址为1000,则元素A[4][3]的存储地址为()A.1020 B.1024C.1036 D.12408.对广义表L= (a,())执行操作tail(L)的结果是()A.() B.(())C.a D.(a)9.已知二叉树的中序序列和后序序列均为ABCDEF,则该二叉树的先序序列为()A.FEDCBA B.ABCDEFC.FDECBA D.FBDCEA10.已知森林F={T1,T2,T3,T4,T5},各棵树T i(i=1,2,3,4,5)中所含结点的个数分别为7,3,5,l,2,则与F对应的二叉树的右子树中的结点个数为()A.2 B.3C.8 D.1111.若非.连通无向图G含有21条边,则G的顶点个数至少为()A.7 B.8C.21 D.2212.如图所示的有向图的拓扑序列是()A.c,d,b,a,eB.c,a,d,b,eC.c,d,e,a,bD.c,a,b,d,e13.对关键字序列(6,1,4,3,7,2,8,5)进行快速排序时,以第1个元素为基准的一次划分的结果为()A.(5,1,4,3,6,2,8,7) B.(5,1,4,3,2,6,7,8)C.(5,1,4,3,2,6,8,7) D.(8,7,6,5,4,3,2,1)14.分块查找方法将表分为多块,并要求()A.块内有序B.块间有序C.各块等长D.链式存储15.便于进行布尔查询的文件组织方式是()A.顺序文件B.索引文件C.散列文件D.多关键字文件二、填空题(本大题共10小题,每小题2分,若有两个空格,每个空格1分,共20分)请在每个空格中填上正确答案。
错填、不填均无分。
16.数据的链式存储结构的特点是借助________表示数据元素之间的逻辑关系。
17.如果需要对线性表频繁进行________或________操作,则不宜采用顺序存储结构。
18.如图所示,可以利用一个向量空间同时实现两个类型相同的栈。
其中栈1为空的条件是top1=0,栈2为空的条件是top2=n-1,则“栈满”的判定条件是________。
19.静态存储分配的顺序串在进行插入、置换和________等操作时可能发生越界。
20.广义表L=(a,(b,( )))的深度为________。
21.任意一棵完全二叉树中,度为1的结点数最多为________。
22.求最小生成树的克鲁斯卡尔(Kruskal)算法耗用的时间与图中________的数目正相关。
23.在5阶B-树中,每个结点至多含4个关键字,除根结点之外,其他结点至少含________个关键字。
24.若序列中关键字相同的记录在排序前后的相对次序不变,则称该排序算法是________的。
25.常用的索引顺序文件是________文件和________文件。
三、解答题(本大题共4小题,每小题5分,共20分)26.如图所示,在n×n矩阵A中,所有下标值满足关系式i+j<n+l的元素a ij的值均为0,现将A中其它元素按行优先顺序依次存储到长度为n(n+1)/2的一维数组sa中,其中元素a1,n存储在sa[0]。
(1)设n=10,元素a4,9存储在sa[p],写出下标p的值;(2)设元素a i,j存储在sa[k]中,写出由i,j和n计算k的一般公式。
27.由字符集{s,t,a,e,I}及其在电文中出现的频度构建的哈夫曼树如图所示。
已知某段电文的哈夫曼编码为111000010100,请根据该哈夫曼树进行译码,写出原来的电文。
28.已知无向图G的邻接表如图所示,(1)画出该无向图;(2)画出该图的广度优先生成森林。
29.对序列(48,37,63,96,22,31,50,55,11)进行升序的堆排序,写出构建的初始(大根)堆及前两趟重建堆之后的序列状态。
初始堆:第1趟:第2趟:四、算法阅读题(本大题共4小题,每小题5分,共20分)30.阅读下列算法,并回答问题:(1)无向图G如图所示,写出算法f30(&G)的返回值;(2)简述算法f30的功能。
#define MaxNum 20int visited[MaxNum];void DFS(Graph *g,int i);/*从顶点v i出发进行深度优先搜索,访问顶点v j时置visited[j]为1*/ int f30(Graph *g){ int i,k;for (i=0;i<g->n;i++)/*g->n为图g的顶点数目*/visited[i]=0;for (i=k=0;i<g->n; i++)if (visited[i]= =0){ k++;DFS(g,i);}return k;}31.假设学生成绩按学号增序存储在带头结点的单链表中,类型定义如下:typedef struct Node {int id; /*学号*/int score;/*成绩*/struct Node *next;} LNode,*LinkList;阅读算法f31,并回答问题:(1)设结点结构为,成绩链表A和B如图所示,画出执行算法f31(A,B)后A所指的链表;(2)简述算法f31的功能。
void f31(LinkList A, LinkList B){ LinkList p, q;p=A->next;q=B->next;while (p && q){ if (p->id<q->id)p=p->next;else if (p->id>q->id)q=q->next;else{ if (p->score<60)if (q->score<60)p->score=q->score;else p->score=60;p=p->next;q=q->next;}}}32.阅读下列算法,并回答问题:(1)设串s=“OneWorldOneDream”,t="One",pos是一维整型数组,写出算法f32(s,t,pos)执行之后得到的返回值和pos中的值;(2)简述算法f32的功能。
int strlen(char*s);/*返回串s的长度*/int index(char*st,char*t);/*若串t在串st中出现,则返回在串st中首次出现的下标值,否则返回-1*/int f32(char*s, char*t, int pos[]){ int i, j, k, ls, lt;ls=strlen(s);1t=strlen(t);if (ls= =0||1t= =0) return-1;k=0;i=0;do {j=index(s+i, t);if (j>=0){ pos[k++]=i+j;i+=j+1t;}}while(i+1t<=1s && j >=0);return k;}33.二叉排序树的存储结构定义为以下类型:typedef int KeyType;typedef struct node {KeyType key; /*关键字项*/InfoType otherinfo; /*其它数据项*/struct node *1child, *rchild; /*左、右孩子指针*/ } BSTNode, *BSTree;阅读算法f33,并回答问题:(1)对如图所示的二叉排序树T,写出f33(T,8)返回的指针所指结点的关键字;(2)在哪些情况下算法f33返回空指针?(3)简述算法f33的功能。
BSTNode *f33(BSTree T, KeyType x){ BSTNode *p;if (T= =NULL) return NULL;p=f33(T->1child, x);if (p!=NULL)return p;if (T->key>x)return T;return f33(T-> rchild, x);}五、算法设计题(本题10分)34.假设线性表采用顺序存储结构,其类型定义如下:#define ListSize 100typedef struct {int data[ListSize];int length;} SeqList, *Table;编写算法,将顺序表L中所有值为奇数的元素调整到表的前端。