



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四次作业1. 设如下图所示的二叉树B的存储结构为二叉链表,root为根指针,结点结构为:(lchild,data,rchild)。其中lchild,rchild分别为指向左右孩子的指针,data为字符型,root为根指针,试回答下列问题:(1).对下列二叉树B,执行下列算法traversal(root),试指出其输出结果;C的结点类型定义如下:struct nodechar data;struct node *lchild, rchild;C算法如下:void traversal(struct node *root)if (root) printf(“%c”, root-data); traversal(root-lchild); printf(“%c”, root-data);traversal(root-rchild);(2).假定二叉树B共有n个结点,试分析算法traversal(root)的时间复杂度。AB D C F G E二叉树B2. 试写出如图所示的二叉树分别按先序、中序、后序遍历时得到的结点序列。3.把如图所示的树转化成二叉树。4.画出和下列二叉树相应的森林。5.编写按层次顺序(同一层自左至右)遍历二叉树的算法 (或:按层次输出二叉树中所有结点) 。1. 设如下图所示的二叉树B的存储结构为二叉链表,root为根指针,结点结构为:(lchild,data,rchild)。其中lchild,rchild分别为指向左右孩子的指针,data为字符型,root为根指针,试回答下列问题:(1).对下列二叉树B,执行下列算法traversal(root),试指出其输出结果;C的结点类型定义如下:struct nodechar data;struct node *lchild, rchild;C算法如下:void traversal(struct node *root)if (root) printf(“%c”, root-data); traversal(root-lchild); printf(“%c”, root-data);traversal(root-rchild);(2).假定二叉树B共有n个结点,试分析算法traversal(root)的时间复杂度。AB D C F G E二叉树B解:这是“先根再左再根再右”,比前序遍历多打印各结点一次,输出结果为:A B C C E E B A D F F D G G特点:每个结点肯定都会被打印两次;但出现的顺序不同,其规律是:凡是有左子树的结点,必间隔左子树的全部结点后再重复出现;如A,B,D等结点。反之马上就会重复出现。如C,E,F,G等结点。时间复杂度以访问结点的次数为主,精确值为2*n,时间渐近度为O(n).2. 试写出如图所示的二叉树分别按先序、中序、后序遍历时得到的结点序列。答:DLR:A B D F J G K C E H I L MLDR: B F J D G K A C H E L I MLRD:J F K G D B H L M I E C A3.把如图所示的树转化成二叉树。答:注意全部兄弟之间都要连线(包括度为2的兄弟),并注意原有连线结点一律归入左子树,新添连线结点一律归入右子树。 A B E C K F H D L G I M J4.画出和下列二叉树相应的森林。答:注意根右边的子树肯定是森林,而孩子结点的右子树均为兄弟。5.编写按层次顺序(同一层自左至右)遍历二叉树的算法 (或:按层次输出二叉树中所有结点) 。解:思路:既然要求从上到下,从左到右,则利用队列存放各子树结点的指针是个好办法。这是一个循环算法,用while语句不断循环,直到队空之后自然退出该函数。技巧之处:当根结点入队后,会自然使得左、右孩子结点入队,而左孩子出队时又会立即使得它的左右孩子结点入队,以此产生了按层次输出的效果。层序遍历二叉树的递归算法void LayerOrder(Bitree T) /层序遍历二叉树 InitQueue(Q); /建立工作队列 EnQueue(Q,T); while(!QueueEmpty(Q) DeQueue(Q,p);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园消防知识培训课件活动
- 网络祭奠面试题及答案
- 依法行政考试试题及答案
- 占地面积试题及答案
- 平安产品面试题及答案
- java消息队列面试题及答案
- 熟人看病面试题及答案
- 江苏省素描试题及答案
- 伤口造口护理考核试题及答案
- 北京瓷器知识培训课件
- 不锈钢焊工技能培训课件
- 管道迁改协议书
- 水利安全风险防控“六项机制”与安全生产培训
- 2025年中国异噻唑啉酮杀菌灭藻剂市场现状分析及前景预测报告
- 基于遥感生态指数的柴达木盆地生态环境质量时空演变分析
- 剑桥PET2025年试卷词汇记忆法与实际运用
- TCPQSXF006-2023消防水带产品维护更换及售后服务
- QGDW12505-2025电化学储能电站安全风险评估规范
- 《健身步行指南》课件
- 《人工智能在军事应用中的前沿技术》课件
- 前台文员如何进行有效的时间分配计划
评论
0/150
提交评论