1.一棵二叉树的顺序存储情况如下:树中,度为2的结点数为()。
A.1B.2C.3D.42.一棵“完全二叉树”结点数为25,高度为()。
A.4B.5C.6D.不确定3.下列说法中,()是正确的。
A.二叉树就是度为2的树B.二叉树中不存在度大于2的结点C.二叉树是有序树D.二叉树中每个结点的度均为24.一棵二叉树的前序遍历序列为ABCDEFG,它的中序遍历序列可能是()。
A.CABDEFGB.BCDAEFGC.DACEFBGD.ADBCFEG5.线索二叉树中的线索指的是()。
A.左孩子B.遍历C.指针D.标志6.建立线索二叉树的目的是()。
A.方便查找某结点的前驱或后继B.方便二叉树的插入与删除C.方便查找某结点的双亲D.使二叉树的遍历结果唯一7.有abc三个结点的右单枝二叉树的顺序存储结构应该用()示意。
A.abcB.ab^cC.ab^^cD.a^b^^^c8.一颗有2046个结点的完全二叉树的第10层上共有()个结点。
A.511B.512C.1023D.10249.一棵完全二叉树一定是一棵()。
A.平衡二叉树B.二叉排序树C.堆D.哈夫曼树10.某二叉树的中序遍历序列和后序遍历序列正好相反,则该二叉树一定是()的二叉树。
A.空或只有一个结点B.高度等于其结点数C.任一结点无左孩子D.任一结点无右孩子11.一棵二叉树的顺序存储情况如下:123456789101112131415ABCDE0F00GH000X结点D的左孩子结点为()。
A.EB.CC.FD.没有12.一棵“完全二叉树”结点数为25,高度为()。
A.4B.5C.6D.不确定二、填空题(每空3分,共18分)。
1.树的路径长度:是从树根到每个结点的路径长度之和。
对结点数相同的树来说,路径长度最短的是完全二叉树。
2.在有n个叶子结点的哈夫曼树中,总结点数是2n-1。
3.在有n个结点的二叉链表中,值为非空的链域的个数为n-1。
4.某二叉树的中序遍历序列和后序遍历序列正好相反,则该二叉树一定是任一结点无左孩子的二叉树。
5.深度为k的二叉树最多有个结点,最少有k个结点。
三、综合题(共58分)。
1.假定字符集{a,b,c,d,e,f}中的字符在电码中出现的次数如下:字符abcdef频度9122023155构造一棵哈夫曼树(6分),给出每个字符的哈夫曼编码(4分),并计算哈夫曼树的加权路径长度WPL(2分)。
(符合WPL最小的均为哈夫曼树,答案不唯一)哈夫曼编码:2.假设用于通信的电文由字符集{a,b,c,d,e,f,g}中的字符构成,它们在电文中出现的频率分别为{0.31,0.16,0.10,0.08,0.11,0.20,0.04}。
要求:(1)为这7个字符设计哈夫曼树(6分)。
(2)据此哈夫曼树设计哈夫曼编码(4分)。
(3)假设电文的长度为100字符,使用哈夫曼编码比使用3位二进制数等长编码使电文总长压缩多少?(4分)(1)为这7个字符设计哈夫曼树为(符合WPL最小的均为哈夫曼树,答案不唯一):(2)哈夫曼编码为:a:01;b:001;c:100;d:0001;e:101;f:11;g:0000(3)假设电文的长度为100字符,使用哈夫曼编码比使用3位二进制数等长编码使电文总长压缩多少?采用等长码,100个字符需要300位二进制数,采用哈夫曼编码发送这100个字符需要261二进制位,压缩了30
1
线性表某软件公司大约有30名员工,每名员工有姓名、工号、职务等属性,每年都有员工离职和入职。
把所有员工按照顺序存储结构建立一个线性表,建立离职和入职函数,当有员工离职或入职时,修改线性表,并且打印最新的员工名单。
约瑟夫(Josephus)环问题:编号为1,2,3,…,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。
一开始任选一个正整数作为报数的上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止。
报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一人开始重新从1报数,如此下去,直到所有人全部出列为止。
建立n个人的单循环链表存储结构,运行结束后,输出依次出队的人的序号。
栈和队列某商场有一个100个车位的停车场,当车位未满时,等待的车辆可以进入并计时;
当车位已满时,必须有车辆离开,等待的车辆才能进入;
当车辆离开时计算停留的的时间,并且按照每小时1元收费。
汽车的输入信息格式可以是(进入/离开,车牌号,进入/离开时间),要求可以随时显示停车场内的车辆信息以及收费历史记录。
某银行营业厅共有6个营业窗口,设有排队系统广播叫号,该银行的业务分为公积金、银行卡、理财卡等三种。
公积金业务指定1号窗口,银行卡业务指定2、3、4号窗口,理财卡业务指定5、6号窗口。
但如果5、6号窗口全忙,而2、3、4号窗口有空闲时,理财卡业务也可以在空闲的2、3、4号窗口之一办理。
客户领号、业务完成可以作为输入信息,要求可以随时显示6个营业窗口的状态。
5、4阶斐波那契序列如下:f0=f1=f2=0,f3=1,…,fi=fi-1+fi-2+fi-3+fi-4,利用容量为k=4的循环队列,构造序列的前n+1项(f0,f1,f2,…fn),要求满足fn≤200而fn+1>200。
6、八皇后问题:设8皇后问题的解为(x1,x2,x3,…,x8),约束条件为:在8x8的棋盘上,其中任意两个xi和xj不能位于棋盘的同行、同列及同对角线。
要求用一位数组进行存储,输出所有可能的排列。
7、迷宫求解:用二维矩阵表示迷宫,自动生成或者直接输入迷宫的格局,确定迷宫是否能走通,如果能走通,输出行走路线。
8、英国人格思里于1852年提出四色问题(fourcolourproblem,亦称四色猜想),即在为一平面或一球面的地图着色时,假定每一个国家在地图上是一个连通域,并且有相邻边界线的两个国家必须用不同的颜色,问是否只要四种颜色就可完成着色。
现在给定一张地图,要求对这张地图上的国家用不超过四种的颜色进行染色。
要求建立地图的邻接矩阵存储结构,输入国家的个数和相邻情况,输出每个国家的颜色代码。
9、以下问题要求统一在一个大程序里解决。
从原四则表达式求得后缀式,后缀表达式求值,从原四则表达式求得中缀表达式,从原四则表达式求得前缀表达式,前缀表达式求值。
数组与广义表鞍点问题:若矩阵A中的某一元素A[i,j]是第i行中的最小值,而又是第j列中的最大值,则称A[i,j]是矩阵A中的一个鞍点。
写出一个可以确定鞍点位置的程序。
稀疏矩阵转置:输入稀疏矩阵中每个元素的行号、列号、值,建立稀疏矩阵的三元组存储结构,并将此矩阵转置,显示转置前后的三元组结构。
用头尾链表存储表示法建立广义表,输出广义表,求广义表的表头、广义表的表尾和广义表的深度。
树和二叉树以下问题要求统一在一个大程序里解决。
按先序遍历的扩展序列建立二叉树的存储结构二叉树先序、中序、后序遍历的递归算法二叉树中序遍历的非递归算法二叉树层次遍历的非递归算法求二叉树的深度(后序遍历)建立树的存储结构求树的深度图输入任意的一个网,用普里姆(Prim)算法构造最小生成树。
要求建立图的存储结构(邻接表或邻接矩阵),输入任意的一个图,显示图的深度优先搜索遍历路径。
要求建立图的存储结构(邻接表或邻接矩阵),输入任意的一个图,显示图的广度优先搜索遍历路径。
查找设计一个读入一串整数构成一颗二叉排序树的程序,从二叉排序树中删除一个结点,使该二叉树仍保持二叉排序树的特性。
24、设定哈希函数H(key)=keyMOD11(表长=11),输入一组关键字序列,根据线性探测再散列解决冲突的方法建立哈希表的存储结构,显示哈希表,任意输入关键字,判断是否在哈希表中。
排序以下问题要求统一在一个大程序里解决。
25、折半插入排序26、冒泡排序27、快速排序28、简单选择排序29、归并排序30、堆排序
2023/12/3 17:25:33 13KB 数据结构 课程设计 C++ 排序
1
大学数据结构编程题目及答案如下:1.写出在顺序存储结构下将线性表逆转的算法,要求使用最少的附加空间。
解:输入:长度为n的线性表数组A(1:n)输出:逆转后的长度为n的线性表数组A(1:n)。
C语言描述如下(其中ET为数据元素的类型)......
2023/11/24 11:51:14 273KB 数据结构
1
实验三栈和队列3.1实验目的:(1) 熟悉栈的特点(先进后出)及栈的基本操作,如入栈、出栈等,掌握栈的基本操作在栈的顺序存储结构和链式存储结构上的实现;
(2) 熟悉队列的特点(先进先出)及队列的基本操作,如入队、出队等,掌握队列的基本操作在队列的顺序存储结构和链式存储结构上的实现。
3.2 实验要求:(1) 复习课本中有关栈和队列的知识;
(2) 用C语言完成算法和程序设计并上机调试通过;
(3) 撰写实验报告,给出算法思路或流程图和具体实现(源程序)、算法分析结果(包括时间复杂度、空间复杂度以及算法优化设想)、输入数据及程序运行结果(必要时给出多种可能的输入数据和运行结果)。
2023/11/12 23:07:01 136KB 栈和队列 实验报告
1
1、 某软件公司大约有30名员工,每名员工有姓名、工号、职务等属性,每年都有员工离职和入职。
把所有员工按照顺序存储结构建立一个线性表,建立离职和入职函数,当有员工离职或入职时,修改线性表,并且打印最新的员工名单。
2023/11/9 3:10:16 2KB 线性表
1
1.经过以下栈运算后,x的值是()。
InitStack(s);Push(s,'a');Push(s,'b');Pop(s,x);Gettop(s,x);A.aB.bC.1D.02.循环队列存储在数组A[0..m]中,则入队时的操作为()。
A.rear=rear+1B.rear=(rear+1)mod(m-1)C.rear=(rear+1)modmD.rear=(rear+1)mod(m+1)3.栈和队列的共同点是()。
A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除元素D.没有共同点4.若用一个大小为6的数组来实现循环队列,且当rear和front的值分别为0和3。
当从队列中删除一个元素,再插入两个元素后,rear和front的值分别为:()。
A.1和5B.2和4C.4和2D.5和15.程序填顺序循环队列的类型定义如下:typedefintET;typedefstruct{ET*base;intFront;intRear;intSize;}Queue;QueueQ;队列Q是否“满”的条件判断为(C)。
A.(Q.Front+1)=Q.RearB.Q.Front=(Q.Rear+1)C.Q.Front=(Q.Rear+1)%Q.sizeD.(Q.Front+1)%Q.Size=(Q.Rear+1)%Q.size6.若进栈序列为1,2,3,4,进栈过程中可以出栈,则()不可能是一个出栈序列。
A.3,4,2,1B.2,4,3,1C.1,4,2,3D.3,2,1,47.向顺序存储的循环队列Q中插入新元素的过程分为三步:()。
A.进行队列是否空的判断,存入新元素,移动队尾指针B.进行队列是否满的判断,移动队尾指针,存入新元素C.进行队列是否空的判断,移动队尾指针,存入新元素D.进行队列是否满的判断,存入新元素,移动队尾指针8.关于栈和队列,()说法不妥。
A.栈是后进先出表B.队列是先进先出表C.递归函数在执行时用到栈D.队列非常适用于表达式求值的算符优先法9.若用数组S[0..m]作为两个栈S1和S2的共同存储结构,对任何一个栈,只有当S全满时才不能作入栈操作。
为这两个栈分配空间的最佳方案是()。
A.S1的栈底位置为0,S2的栈底位置为mB.S1的栈底位置为0,S2的栈底位置为m/2C.S1的栈底位置为1,S2的栈底位置为mD.S1的栈底位置为1,S2的栈底位置为m/2二、程序填空题(没特别标注分数的空的为3分,共23分)。
1.下面的算法是将一个整数e压入堆栈S,请在空格处填上适当的语句实现该操作。
typedefstruct{int*base;int*top;intstacksize;}SqStack;intPush(SqStackS,inte){if(S.top-S.base>=S.stacksize){S.base=(int*)realloc(S.base,(S.stacksize+1)*sizeof(int));if(!S.base){printf(“NotEnoughMemory!\n”);return(0);
2023/9/21 10:03:21 18KB C语言 数据结构 第三章 作业
1
(1)包含改变量定义的最小范围(2)数据抽象、信息隐蔽(3)数据对象、对象间的关系、一组处理数据的操作(4)指针类型(5)集合结构、线性结构、树形结构、图状结构(6)顺序存储、非顺序存储(7)一对一、一对多、多对多(8)一系列的操作(9)有限性、输入、可行性
2023/7/31 19:27:04 279KB C语言描述 数据结构 答案 耿国华
1
16进制10进制.txt32.txtasm.txtCrctable.txtC标志符命名源程序.txterre.txterre2.txtff.txtfor循环的.txtlist.logN皇后问题回溯算法.txtping.txtre.txtsource.txtwinsock2.txtww.txt万年历.txt万年历的算法.txt乘方函数桃子猴.txt乘法矩阵.txt二分查找1.txt二分查找2.txt二叉排序树.txt二叉树.txt二叉树实例.txt二进制数.txt二进制数2.txt余弦曲线.txt余弦直线.txt傻瓜递归.txt冒泡排序.txt冒泡法改进.txt动态计算网络最长最短路线.txt十五人排序.txt单循环链表.txt单词倒转.txt单链表.txt单链表1.txt单链表2.txt单链表倒序.txt单链表的处理全集.txt双链表正排序.txt反出字符.txt叠代整除.txt各种排序法.txt哈夫曼算法.txt哈慢树.txt四分砝码.txt四塔1.txt四塔2.txt回文.txt图.txt圆周率.txt多位阶乘.txt多位阶乘2.txt大加数.txt大小倍约.txt大整数.txt字符串查找.txt字符编辑.txt字符编辑技术(插入和删除).txt完数.txt定长串.txt实例1.txt实例2.txt实例3.txt小写数字转换成大写数字1.txt小写数字转换成大写数字2.txt小写数字转换成大写数字3.txt小字库DIY-.txt小字库DIY.txt小孩分糖果.txt小明买书.txt小白鼠钻迷宫.txt带头结点双链循环线性表.txt平方根.txt建树和遍历.txt建立链表1.txt扫描码.txt挽救软盘.txt换位递归.txt排序法.txt推箱子.txt数字移动.txt数据结构.txt数据结构2.txt数据结构3.txt数组完全单元.txt数组操作.txt数组递归退出.txt数组递归退出2.txt文件加密.txt文件复制.txt文件连接.txt无向图.txt时间圈套.txt杨辉三角形.txt栈单元加.txt栈操作.txt桃子猴.txt桶排序.txt检出错误.txt检测鼠标.txt汉字字模.txt汉诺塔.txt汉诺塔2.txt灯塔问题.txt猴子和桃.txt百鸡百钱.txt矩阵乘法动态规划.txt矩阵转换.txt硬币分法.txt神经元模型.txt穷举搜索法.txt符号图形.txt简单数据库.txt简单计算器.txt简单逆阵.txt线性顺序存储结构.txt线索化二叉树.txt绘制圆.txt编随机数.txt网络最短路径Dijkstra算法.txt自我复制.txt节点.txt苹果分法.txt螺旋数组1.txt螺旋数组2.txt试题.txt诺汉塔画图版.txt读写文本文件.txt货郎担分枝限界图形演示.txt货郎担限界算法.txt质因子.txt输出自已.txt迷宫.txt迷宫问题.txt逆波兰计算器.txt逆矩阵.txt逆阵.txt递堆法.txt递归桃猴.txt递归车厢.txt递推.txt逻辑移动.txt链串.txt链栈.txt链表十五人排序.txt链表(递归).txt链队列.txt队列.txt阶乘递归.txt阿姆斯特朗数.txt非递归.txt顺序栈.txt顺序表.txt顺序队列.txt骑士遍历1.txt骑士遍历2.txt骑士遍历回逆.txt黑白.txt
1
网络视频资源,如有侵权请留言/举报,资源过大上传乃是下载链接!!!!1.1.1线性表的逻辑结构1_10],r3`2t%j&?L&u(}2.1.2线性表的顺序存储结构_1_23.1.3线性表的链式存储结构_1_3_22h&A(D"j5F-i+I4N%S4.1.3线性表的链式存储结构1_3_1(C'z9h3~:v"q"k5.小结:顺序表和链表的比较与选择依据_1_46.章节总结及典型例题分析_1_57.2.1栈的类型定义_2_18.2.2栈的应用举例_2_2._)\%q6h*_6p!{9.2.3栈类型的实现_2_35X$M0sz0S&h7g:s10.2.4、2.5队列的类型定义及实现_2_40F.|1E$@,T/z2g7N(|,A11.2.6、2.7数组的类型定义、数组的顺序表示和实现_2_5'T*_$t*U5E'~:l'L%S&N7i5q12.2.8特殊矩阵的压缩存储_2_613.章节总结及典型例题分析_2_7*i1K%?#a:k+l;_C#Y/O14.3.1树的类型定义_3_1(I5J0P0o6}n15.3.2二叉树的类型定义_3_216.3.3二叉树的存储结构_3_3/X0p(f'd%|3p17.3.4遍历算法应用举例3_4_23f,WM;b5X+{)R9\#M:n/g18.3.4二叉树的遍历_3_4_1)c2Y+^*v"K2[:}2n"|19.3.5线索二叉树_3_520.3.6树和森林的表示法_3_6;a0?$C5K)|"K2[6t7}2i21.3.7树和森林的遍历_3_7+j4p(B5s6`"nN|3@22.3.8哈夫曼树和哈夫曼树编码_3_8'l)t*^(i*Y%a~.e,S-J23.章节总结及典型例题分析_3_9'j:?'j1u(u:q&y24.4.1抽象数据类型图的定义25.4.2图的存储表示!t)e!R(L3x"^:D*y-y26.4.3图的遍历'br0I;|4V-jt$y27.4.4最小生成树6Q9P3F.lJ/n28.4.5拓扑排序7Q1X(t!E,O)]4|/L29.4.6关键路径_4_66ce5N2D7B8d)D(n/v/~30.4.7两点之间的最短路径问题+u!d.o/s7b31.4.8章节总结及典型例题分析4S%p9G:}/s7w32.5.1静态查找表1gj8T7|"X.o#P&r.A33.5.2动态查找表p3c#L.[&y34.5.3散列表)n7y(K:K(o*H8E/_,}/S35.5.4字符串模式婚配6K2X(o[.C;|'F36.5.5章节总结及典型例题分析37.6.1排序的基本概念#s:J(L.W-X6Y#A#?!G1\1}38.6.2插入类排序*R"k'A3E5S:x39.6.3交换类排序法40.6.4选择类排序法41.6.5归并排序、6.6分配类排序5O'{1c+p1[:h2r)m42.6.7各种排序方法的综合比较5e8p%s*L$Y-P3G+K43.章节总结及典型例题分析
1
网络视频资源,如有侵权请留言/举报,资源过大上传乃是下载链接!!!!1.1.1线性表的逻辑结构1_10],r3`2t%j&?L&u(}2.1.2线性表的顺序存储结构_1_23.1.3线性表的链式存储结构_1_3_22h&A(D"j5F-i+I4N%S4.1.3线性表的链式存储结构1_3_1(C'z9h3~:v"q"k5.小结:顺序表和链表的比较与选择依据_1_46.章节总结及典型例题分析_1_57.2.1栈的类型定义_2_18.2.2栈的应用举例_2_2._)\%q6h*_6p!{9.2.3栈类型的实现_2_35X$M0sz0S&h7g:s10.2.4、2.5队列的类型定义及实现_2_40F.|1E$@,T/z2g7N(|,A11.2.6、2.7数组的类型定义、数组的顺序表示和实现_2_5'T*_$t*U5E'~:l'L%S&N7i5q12.2.8特殊矩阵的压缩存储_2_613.章节总结及典型例题分析_2_7*i1K%?#a:k+l;_C#Y/O14.3.1树的类型定义_3_1(I5J0P0o6}n15.3.2二叉树的类型定义_3_216.3.3二叉树的存储结构_3_3/X0p(f'd%|3p17.3.4遍历算法应用举例3_4_23f,WM;b5X+{)R9\#M:n/g18.3.4二叉树的遍历_3_4_1)c2Y+^*v"K2[:}2n"|19.3.5线索二叉树_3_520.3.6树和森林的表示法_3_6;a0?$C5K)|"K2[6t7}2i21.3.7树和森林的遍历_3_7+j4p(B5s6`"nN|3@22.3.8哈夫曼树和哈夫曼树编码_3_8'l)t*^(i*Y%a~.e,S-J23.章节总结及典型例题分析_3_9'j:?'j1u(u:q&y24.4.1抽象数据类型图的定义25.4.2图的存储表示!t)e!R(L3x"^:D*y-y26.4.3图的遍历'br0I;|4V-jt$y27.4.4最小生成树6Q9P3F.lJ/n28.4.5拓扑排序7Q1X(t!E,O)]4|/L29.4.6关键路径_4_66ce5N2D7B8d)D(n/v/~30.4.7两点之间的最短路径问题+u!d.o/s7b31.4.8章节总结及典型例题分析4S%p9G:}/s7w32.5.1静态查找表1gj8T7|"X.o#P&r.A33.5.2动态查找表p3c#L.[&y34.5.3散列表)n7y(K:K(o*H8E/_,}/S35.5.4字符串模式婚配6K2X(o[.C;|'F36.5.5章节总结及典型例题分析37.6.1排序的基本概念#s:J(L.W-X6Y#A#?!G1\1}38.6.2插入类排序*R"k'A3E5S:x39.6.3交换类排序法40.6.4选择类排序法41.6.5归并排序、6.6分配类排序5O'{1c+p1[:h2r)m42.6.7各种排序方法的综合比较5e8p%s*L$Y-P3G+K43.章节总结及典型例题分析
1
共 27 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡