pat a1020 后序+中序,建树,并求层序序列

全志 T527_Android13 编译 [ 避坑必看 ] Swap 概念: Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行。当输入编译命令make -j16 的时候,会有如下提示,这是官方建议通过减少编译线程来解决编译时消耗内存过大的问题。Android 13 系统的编译流程,编译一共分为两部分:内核编译与 Android 编译。 阅读详情

题目:https://pintia.cn/problem-sets/994805342720868352/problems/994805485033603072 

给出一棵二叉树的后序遍历序列和中序遍历序列,求这棵二叉树的层序遍历序列。

#include<cstdio>
#include<cstring>
#include<queue>
#include<algorithm>
using namespace std;

const int maxn=50;

struct Node
{
	int data;
	Node* lchild;
	Node* rchild;
};

int pre[maxn],in[maxn],post[maxn];  //全局变量
int n;

Node* create(int postL,int postR,int inL,int inR)
{
	if(postL>postR) return NULL;
	
	Node* root=new Node;
	root->data=post[postR];
	int k;
	for(k=inL;k<=inR;k++)
	{
		if(in[k]==post[postR]) break;
	}
	int numLeft=k-inL;
	root->lchild=create(postL,postL+numLeft-1,inL,k-1);
	root->rchild=create(postL+numLeft,postR-1,k+1,inR);
	
	return root;
}

int num=0;

void BFS(Node* root)
{
	queue<Node*> q;
	q.push(root);
	while(!q.empty())
	{
		Node* now=q.front();
		q.pop();
		printf("%d",now->data);
		num++;
		if(num<n) printf(" ");
		if(now->lchild!=NULL) q.push(now->lchild);
		if(now->rchild!=NULL) q.push(now->rchild);
	}
} 

int main()
{
	scanf("%d",&n);
	
	for(int i=0;i<n;i++)
	{
		scanf("%d",&post[i]);
	}
	for(int i=0;i<n;i++)
	{
		scanf("%d",&in[i]);
	}
	Node* root=create(0,n-1,0,n-1);
	BFS(root);
	return 0;
}

 

RANSAC地面点分割:从原理到C++实战优化 本文深入解析RANSAC算法在点云地面分割中的原理与C++实战优化,涵盖动态迭代次数、自适应阈值等关键技巧,通过并行计算和内存访问优化提升性能,适用于激光雷达点云处理。 阅读详情

相关推荐

阻抗匹配详解

在深入理解阻抗匹配概念之前,我们可以先来一起看一个现象,首先使用一个信号发生器输出一个脉宽为 50ns 的单脉冲信号,同时将信号接入示波器,此时在示波器的波形视图上可以看到这个仅有一个脉冲的信号,如下图。如果我们将信号接入示波器的同时将电缆延长数米到外部,并且延长后电缆末端保持悬空不接入任何东西,引出一段未接入任何东西的开路电缆,按照常识应该没有任何影响,然而实测是在原有脉冲旁边多出了一个类似脉冲,如下图。

zhbi98 的技术 Blogs 2564

PAT A1020 Tree Traversals

1020 Tree Traversals 分数 25 作者 CHEN, Yue 单位 浙江大学 Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequence of the corresp

qq_51825761的博客 493

【项目分享】RailTracker: 火车票务数据采集与分析

从12306使用爬虫爬取火车站及车次信息、火车票价 通过本项目,我们将带领访问者手把手完成火车票数据采集、数据清洗、数据集成、可视化的一整个流程!

zhushatong的博客 3345

PAT A1020(二叉树已知前序和中序,求层序遍历)

后序的最后一个是根结点,令i在中序中找到该根结点,则i把中序分为两部分,左边是左子树,右边是右子树。因为是输出先序(根左右),所以先打印出当前根结点,然后打印左子树,再打印右子树。左子树在后序中的根结点为root – (end – i + 1),即为当前根结点-(右子树的个数+1)。左子树在中序中的起始点start为start,末尾end点为i – 1.右子树的根结点为当前根结点的前一个结点root – 1,右子树的起始点start为i+1,末尾end点为end。 》代码如下: #include<.

学习笔记,不喜勿喷! 198

手把手教你学Simulink--双足机器人分数阶PID控制仿真

分数阶PID(Fractional-order PID, FOPID)控制是一种先进的控制策略,它扩展了传统的整数阶PID控制器的概念。FOPID控制器允许积分和微分项的阶次不是严格的整数,而是可以是任意实数,这为系统提供了更多的设计自由度,并可能带来更好的性能。在双足机器人控制中,分数阶PID控制可以用于改善机器人的平衡控制、轨迹跟踪等任务的性能。下面我们将详细介绍如何使用Simulink进行基于分数阶PID控制方法的双足机器人仿真研究。

MHD0815的博客 883

【GNSS测试技术(一)】GNSS基础原理介绍

GNSS(全球卫星导航系统)是一种基于卫星信号的定位技术,通过使用分布在地球轨道上的卫星,为用户提供全球范围内的定位、导航和授时服务。

新猿异码的博客 5753

1020 Tree Traversals (25 分)

Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequence of the cor...

qq_37866617的博客 166

DeepSeek+Dify之一安装部署

DeepSeek添加知识库

yilvyangguang520的博客 1545

PAT 甲级 A1020 Tree Traversals

Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequence of the corresponding binary tree.Each input file contains one test

m0_51711089的博客 293

不会路由器叠加多条宽带?看这个就够了,能让你的局域网速度更快!

通常我们在企业网络或实际项目中,随着用户的增加,一条或者几条带宽不能满足正常使用,便可以对带宽进行叠加,便于网络带度更快;通常家里有可能有两条带宽的,联通或移动的,可能都是充话费送的,但网速都不怎么样,不用可惜,用之委屈,那怎么办呢?如在迅雷上开启下载,多个资源同时下载,此时总带宽可以达到120M,也就是WAN口带宽可以叠加。多wan口路由器, 一般是有2个wan口,分别为wan1与wan2。当然也有更多的wan口的。[1] 对整个局域网来说,出口带宽数量多了,相当于总带宽上升,这样是可以起到叠加效果。

qq_43416206的博客 1112

thermal系列(5)-DTSI中配置Thermal

By: fulinux E-mail: fulinux@sina.com Blog: https://blog.youkuaiyun.com/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 目录thermal系列目录DTSI中配置ThermalDTSI节点类型描述CPU0的配置举例CPU核hot-plugging举例修改热缓解阈值DTSI的node中带有tracks-lowDTSI中关闭某个Thermal Zones thermal系列目录 thermal系列(1)-引言部分 thermal.

fulinux的博客 1232

PAT A1020【Tree Traversals】(25 分)

1020 Tree Traversals (25 分) 题目链接 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Problem Description Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal s

醉酒诗人的博客 482

给跨代引用记一本账:Java GC 的分配路径、卡表写屏障与收集器版图快速回顾

本文把 Java GC 的零散名词串成一条推理链路:从 TLAB 指针碰撞分配、逃逸分析,到 Eden、Survivor 与晋升的四条路,重点拆解卡表与写屏障如何为老年代指向新生代的引用记账,及 Minor GC 如何只扫脏卡。基于 JDK 8 实测:分散写使 Young GC 停顿涨 10~15 倍,条件卡标记消除卡表伪共享,计数循环让 System.gc 等待 2.7 秒,Survivor 过小使晋升量增加约 400 倍。文末梳理 JDK 8 到 27 的收集器演进、选型路径与排查顺序。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 17万+

根据前中后序和层序重建二叉树(PAT1020、PAT1043)

欢迎访问新博客,这里有更好的排版哦 ; )  点击打开链接 背景 《二叉树的遍历(递归、非递归)分析》总结了二叉树不同遍历方式的递归和非递归实现,本文则讨论如何针对不同遍历方式的组合重建二叉树。为了简化问题的考虑,假定二叉树中不会出现重复值。列入考虑范围的有前序、中序、后序、层序遍历这四种的组合。前中后序比较常见,而层序则相对特殊一点了。 PAT的1043和1020题是遍历相关的

biaobiaoqi的老博客 2209

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

PAT 1020 Tree Traversals根据中序,后序遍历结果重新建树

1020 Tree Traversals Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversa...

adventural的博客 337

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

PAT甲级 1020 Tree Traversals 二叉树的中序,后序转层次遍历

思路: 可以先参考: 前序、中序转后序 后序、中序转前序 思路: 后序、中序转层序与后序、中序转前序差不多,主要是我们需要一个index来记录层次遍历中结点的序号。 代码如下: #include<iostream> #include<vector> #include<algorithm> using namespace std; int post[35];/...

化身孤岛的鲸o的博客 743

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

PAT A1020 2019.07.26 【后中序列建树 层次遍历】

1020Tree Traversals(25分) Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order ...

一个非计算机专业的 博客 283

[PAT-Advanced] A1020 Tree Traversals (25)

文章目录A1020 Tree Traversals (25point(s))Input Specification:Output Specification:Sample Input:Sample Output:CodeAnalysis A1020 Tree Traversals (25point(s)) Suppose that all the keys in a binary tree are...

Duke 294

pat根据中序遍历和先序遍历_PAT A1020——已知后序中序遍历求层序遍历

Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequence of the cor...

weixin_39867142的博客 490

PAT 1020 Tree Traversals

PAT 1020 Tree Traversals 层次遍历+后序遍历+中序遍历 建树

2301_80219163的博客 3456

PAT A1020——已知后序中序遍历求层序遍历

PAT A1020——已知后序中序遍历求层序遍历 1020 Tree Traversals Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequenc...

泊停的博客 299

PAT1020 Tree Traversals(后序中序求层序)

已知后序和中序,求层次遍历 法一:标准建树+BFS版 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) scanf("%d",&x) #define sca2(x,y) scanf("%d%d",&x...

NoobPlayer_llke的博客 215

树的遍历 Java代码 (中序和后序构建树)【PAT甲级1020】

构建的方式:通过中序序列和后序序列可以唯一确定一颗二叉树,这是因为后序序列的最后一个值便是根结点 t ,而这个根结点将中序序列又分成了左右两部分,中序遍历的左右两部分加上后序遍历的左右两部分又可以分别确定两棵树,这两棵树又能确定两个根结点,即 t 的左右子树的根结点,依此递归下去,直到不能再划分为止。

深街酒徒的博客 353

PAT甲级1020 Tree Traversals//由后序和中序序列确定一棵二叉树

Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequence of the corresponding binary tree. 翻译:假设二叉树中的所有键都是不同的正整数。给定后序遍历序列和中

冷眼看world的博客 381

PAT 1020 Tree Traversals [后序+中序建树] [层次遍历]

Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and inorder traversal sequences, you are supposed to output the level order traversal sequence of the cor...

咸鱼夏の翻身观察记录 200

PAT甲级|1151 LCA in a Binary Tree 先序中序遍历建树 lca

给定先序中序遍历的序列,可以确定一颗唯一的树 先序遍历第一个遍历到的是根,中序遍历确定左右子树 查结点a和结点b的最近公共祖先,简单lca思路: 1.如果a和b分别在当前根的左右子树,当前的根就是最近祖先 2.如果根等于a或者根等于b了,根就是最近祖先;判断和a等还是和b等就行了 3.如果都在左子树上,递归查左子树就可以了。这里找到左子树的边界和根(通过先序中序序列) 4.如果都在右子树上,递归查...

weixin_30606669的博客 181
上一篇: 根据先序、中序序列,重建二叉树
下一篇: 树的遍历
Estrellas_
博客等级 码龄9年 273粉丝 233原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值