news 2026/4/16 12:13:10

【例3-5】扩展二叉树(信息学奥赛一本通- P1340)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【例3-5】扩展二叉树(信息学奥赛一本通- P1340)

【题目描述】

由于先序、中序和后序序列中的任一个都不能唯一确定一棵二叉树,所以对二叉树做如下处理,将二叉树的空结点用·补齐,如图所示。我们把这样处理后的二叉树称为原二叉树的扩展二叉树,扩展二叉树的先序和后序序列能唯一确定其二叉树。

现给出扩展二叉树的先序序列,要求输出其中序和后序序列。

【输入】

扩展二叉树的先序序列。

【输出】

输出其中序和后序序列。

【输入样例】

ABD..EF..G..C..

【输出样例】

DBFEGAC DFGEBCA
/* //先建树 顺序存储 #include <bits/stdc++.h> using namespace std; string a; struct node{ int l; int r; char data; node(){ l=r=0; } }tre[2000]; int ind=-1;//记录读取到a数组哪一个数 void midorder(int root){//中序遍历 if(tre[root].l!=0) midorder(root*2); if(tre[root].data!='.') cout<<tre[root].data; if(tre[root].r!=0) midorder(root*2+1); } void postorder(int root){//后序遍历 if(tre[root].l!=0) postorder(root*2); if(tre[root].r!=0) postorder(root*2+1); if(tre[root].data!='.') cout<<tre[root].data; } void build(int k){ ind++; if(ind>=a.size()) return; if(a[ind]=='.'){ tre[k].data='.'; return; } else{ tre[k].data=a[ind]; tre[k].l=k*2; build(k*2); tre[k].r=k*2+1; build(k*2+1); } } int main(){ cin>>a; build(1); midorder(1); cout<<endl; postorder(1); } */ //先建树 然后链式存储 #include <bits/stdc++.h> using namespace std; string a; struct node{ int l; int r; char data; node(){ l=r=0; } }tre[2000]; int ind=-1;//记录读取到a数组哪一个数 int ind2=1; void midorder(int root){//中序遍历 if(tre[root].l!=0) midorder(tre[root].l); if(tre[root].data!='.') cout<<tre[root].data; if(tre[root].r!=0) midorder(tre[root].r); } void postorder(int root){//后序遍历 if(tre[root].l!=0) postorder(tre[root].l); if(tre[root].r!=0) postorder(tre[root].r); if(tre[root].data!='.') cout<<tre[root].data; } void build(int k){ ind++; if(ind>=a.size()) return; if(a[ind]=='.'){ tre[k].data='.'; return; } else{ tre[k].data=a[ind]; tre[k].l=++ind2; build(ind2); tre[k].r=++ind2; build(ind2); } } int main(){ cin>>a; build(1); midorder(1); cout<<endl; postorder(1); }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 10:51:34

Windows的DHCP服务

实验背景Windows Server 2016的DHCP&#xff08;动态主机配置协议&#xff09;服务是网络管理中核心组件之一&#xff0c;用于自动分配IP地址、子网掩码、默认网关等网络配置信息&#xff0c;减少手动配置的复杂性。通过搭建DHCP服务&#xff0c;可以实现局域网内设备的快速部署…

作者头像 李华
网站建设 2026/4/15 16:17:11

孤能子视角:人工智能的硅基文明,路遥且长

(稍为梳理小结一下前期的观点。信兄和千问分别分析) 我的问题: 现在或可见的将来&#xff0c;人工智能是伪人类意识智能体&#xff08;准意能体&#xff09;。距离碳基、硅基文明的路还蛮远。 人工智能与物理世界规律能够“通约”&#xff0c;其基础建立在人工智能的数据来源…

作者头像 李华
网站建设 2026/4/15 0:30:54

WebLogic漏洞复现(附带修复方法)_weblogic漏洞修复

WebLogic是美国Oracle公司出品的一个application server&#xff0c;确切的说是一个基于JAVAEE架构的中间件&#xff0c;默认端口:7001WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的…

作者头像 李华
网站建设 2026/4/14 18:20:07

vue基于Spring Boot货物代运物流系统的应用和研究_3r20sqz8

目录具体实现截图项目介绍论文大纲核心代码部分展示项目运行指导结论源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;同时还支持java、ThinkPHP、Node.js、Spring B…

作者头像 李华
网站建设 2026/4/3 3:14:18

一文搞懂RAG:阿里70K算法岗为什么都在用它?

今天学点啥&#xff1f;每天10分钟&#xff0c;拆解一个真实岗位JD&#xff0c;搞懂一个大模型技术点。今天拆解的是阿里巴巴智能信息事业部的LLM算法岗&#xff0c;薪资给到了40-70K16薪&#xff08;年薪最高112万&#xff09;&#xff0c;JD中的技术要求如下&#xff1a; ✅ …

作者头像 李华