2023年山东大学计算机学院数据结构真题

上传人:时间****91 文档编号:166922017 上传时间:2022-11-01 格式:DOC 页数:6 大小:23KB
收藏 版权申诉 举报 下载
2023年山东大学计算机学院数据结构真题_第1页
第1页 / 共6页
2023年山东大学计算机学院数据结构真题_第2页
第2页 / 共6页
2023年山东大学计算机学院数据结构真题_第3页
第3页 / 共6页
资源描述:

《2023年山东大学计算机学院数据结构真题》由会员分享,可在线阅读,更多相关《2023年山东大学计算机学院数据结构真题(6页珍藏版)》请在装配图网上搜索。

1、2023年山东大学计算机学院数据结构真题共13大题150分1、分析下列函数,描述函数功能,并求函数的时间复杂度。S=0For (int i=1;i=n;i+) Int p=1; For (int j=1;j=I;j+) P*=j: S+=p; 2、对于具有n个元素的有序数组,查找各个元素的概率相等,采用折半查找时,最少要比较多少次,最多要比较多少次,平均要比较多少次。当n个元素无序时,采用折半查找,最多需要多少次,最少需要多少次。3、描述栈与队列的相同点和不同点。4、二叉树,先序遍历得到abdfceg,中序遍历得到fdbaceg,该二叉树的叶节点是什么。5、有5000个无序元素,公式化描述(数

2、组),规定最快速度选取最大的10个元素,请问,在快速排序,堆排序,基数排序,归并排序四种方法中,采用哪种方法最佳,为什么?6、构建散列表,散列函数为hashf(k)=k%11.已知关键字序列为(8,15,27,2,13,31,19)(具体数字记不清了,我写的数字性质是同样的),请画图表达采用线性开放式寻址和链表地址法存贮。7、(1)假如G1是一个具有n个顶点的连通无向图,那么G1最多有多少条边,最少有多少条边?(2)假如G2是一个具有n个顶点的强连通有向图,那么G2最多有多少条边,最少有多少条边?8、在一篇电码中,由abcde字母组成,其分别出现的次数为4,8,25,37,6(具体数字记不清了

3、,我写的数字性质是同样的)。构造huffman树,给出各个字母的huffman编码,该篇电码的总电码数是多少。9、有一图,顶点为v1,v2,v3,v4,v5,边的集合为(v2,v1),(v5,v3),(v1,v4)(v3,v2),(v1,v3),(v3,v4),(v4,v5),画出该图,该图是强连通有向图吗?10、有一函数fun的功能是将字符串中每个单词的最后一个字母改成大写,例如I am a student to exam.改成I aM A studenT tO exaM.请将该函数补全。Void fun(char *P)Int k=0;For (;p;p+) If (k=1)If (*p=

4、 = ) 【1】;【2】=upper(*(p-1); Else K=1;11、编写算法,求出二叉树中节点的度数为1的个数,并以n返回。(规定不能使用递归),写出算法思想,并写出程序。12、编写程序,给一正整数m,求出在1至m之间(涉及m)中,可以被11或7整除的数字,保存在数组a中,函数返回在1至m之间(涉及m)中,可以被11或7整除的数字的个数,例如m为,30,则将(7,11,14,22,21,28)保存在数组a中,函数返回5.13、有向图和无向图,分别采用邻接矩阵和邻接链表的方法存储。(1)如何求出图中的边的数目?(2)如何判断在顶点i,j之间是否存在边?(3)如何计算顶点i的度?山东大学

5、07计算机真题(回忆整理)1.(8分)(1)for(int i=1;i=n;i+)int p=1;for(int j=1;j=I;j+)p*=j;s+=p;描述功能,并分析时间复杂度。(2)对于1个n元素顺序表,用折半查找,成功查找时,最大最小比较次数各是多少?2.(8分) n阶三对角矩阵A,按行保存到一个数组B中,其中A11存入B0,问:(1)B中有多少元素(2)用i,j表达矩阵元素在B中的索引k(3)用k表达i,j3.(10分)(1).一个中缀表达式为3*y-a/y2,求其后缀表达式(2)描述堆栈在解决后缀表达式中的作用(3)对于(1)中后缀式写出栈的变化 4.(12分) 写出用数组实现字

6、符串类String的类定义,并实现IsSym函数。其中IsSym表达该字符串是中心对称的,例如xyzzyx,xyzyx,若是返回true,否则返回false5.(12分)写出单链表类chain的类定义,并实现BubbleSort函数,不能创建新节点,也不能删除旧节点,其他函数省略。BubbleSort表达将原链表按非递减顺序冒泡排序。6.(10分) 一个二叉搜索树,设任一条从根到叶子的途径包含的节点集合为S2,这条路经所有左边的点的集合为S1,右边所有点集合为S3 ,设a,b,c分别为S1,S2,S3中的任意元素,是否有abk,最佳采用什么排序方法?为什么?(2分)假如有这样一个序列59,11

7、,26,34,17,91,25,得到的部分序列是:11,17,25,对于该例使用所选择的方法实现时,共执行多少次比较?(3分)5、在B-树和B+树中查找关键字时有什么不同?(2分)6、写出对关键字序列503,087,512,061,908,124,897,275,653,426建立一棵平衡二叉树的过程,并写出调整平衡时的指针变化。(5分)二、 解答下列问题:(10分)1、 画出对长度为10的有序表进行二分查找的鉴定树并求其等概率时查找成功的平均查找长度(5分)。2、 设有一组关键字9,01,23,14,55,20,84,27,采用哈希函数:H(key)=key mod 7 ,表长为10,用开放

8、地址法的二次探测再散列方法Hi=(H(key)+di)mod10(di=1*1,2*2,3*3.)解决冲突。规定:对该关键字序列构造哈希表,并计算查找成功的平均查找长度(5分)。三、 已知L为没有头结点的的单链表中第一个结点的指针,每个结点数据域存放一个字符,该字符也许是英文字母字符或数字字符或其他字符,编写算法构造三个以带头结点的单循环链表表达的线性表,使每个表中只含同一类字符。(规定用最少的时间和最少的空间)(15分)四、 对以二叉链表存储的非空二叉树,从右向左依次释放所有的叶子结点,释放的同时把结点值存放到一个向量中规定:(1)用文字写出实现上述过程的基本思想(3分)(2)写出算法(12分)五、 设二叉排序树已经以二叉链表的形式存储在内存中,使用递归方法,求各结点的平衡因子并输出。规定:(1)用文字写出实现上述过程的基本思想(3分)(2)写出算法(12分)六、 假设一个有向图g已经以右图所示的逆邻接表形式存储在内存中,规定:(1)写出逆邻接表的存储结构定义(3分)(2)用文字写出在逆邻接表上实现拓扑排序的基本思想(3分)(3)写出在逆邻接表上实现拓扑排序的算法 (15分)。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!