L2-3浪漫侧影

2024-03-28 10:20
文章标签 浪漫 l2 侧影

本文主要是介绍L2-3浪漫侧影,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

“侧影”就是从左侧或者右侧去观察物体所看到的内容。例如上图中男生的侧影是从他右侧看过去的样子,叫“右视图”;女生的侧影是从她左侧看过去的样子,叫“左视图”。

520 这个日子还在打比赛的你,也就抱着一棵二叉树左看看右看看了……

我们将二叉树的“侧影”定义为从一侧能看到的所有结点从上到下形成的序列。例如下图这棵二叉树,其右视图就是 { 1, 2, 3, 4, 5 },左视图就是 { 1, 6, 7, 8, 5 }。

fig.JPG

于是让我们首先通过一棵二叉树的中序遍历序列和后序遍历序列构建出一棵树,然后你要输出这棵树的左视图和右视图。

输入格式:

输入第一行给出一个正整数 N (≤20),为树中的结点个数。随后在两行中先后给出树的中序遍历和后序遍历序列。树中所有键值都不相同,其数值大小无关紧要,都不超过 int 的范围。

输出格式:

第一行输出右视图,第二行输出左视图,格式如样例所示。

输入样例:

8
6 8 7 4 5 1 3 2
8 5 4 7 6 3 2 1

输出样例:

R: 1 2 3 4 5
L: 1 6 7 8 5
#include "bits/stdc++.h"
using namespace std;
struct node{int val;node *l;node *r;node (int a, node *b = NULL, node *c = NULL) :val(a), l(b), r(c){}
};
int pre[30];
int in[30];
int post[30];
node *tree;
vector<int> v[100];
int H;   //树的高度 
void build_tree(int l, int r, int &t, node* &root){int flag = -1;for(int i = l; i <= r; i++){if(in[i] == post[t]) {flag = i; break;}}if(flag == -1) return;t--;root = new node(in[flag]);build_tree(flag + 1, r, t, root->r);build_tree(l, flag - 1, t, root->l);
}
void f(node* &root, int h){if(root == NULL) return ;v[h].push_back(root->val);H = max(h, H); f(root->l, h + 1);f(root->r, h + 1); 
}
int main(){int n;cin>>n;for(int i = 0; i < n; i ++){cin>>in[i];}for(int i = 0; i < n; i ++){cin>>post[i];}int t = n - 1;build_tree(0, n - 1, t, tree);int h = 0;f(tree, h);cout<<"R: ";for(int i = 0; i <= H; i ++){cout<<v[i].back();if(i == H) cout<<endl;else cout<<" ";}cout<<"L: ";for(int i = 0; i <= H; i ++){cout<<v[i][0];if(i == H) cout<<endl;else cout<<" ";}return 0;
}

 

这篇关于L2-3浪漫侧影的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/855346

相关文章

【机器学习 sklearn】模型正则化L1-Lasso,L2-Ridge

#coding:utf-8from __future__ import divisionimport sysreload(sys)sys.setdefaultencoding('utf-8')import timestart_time = time.time()import pandas as pd# 输入训练样本的特征以及目标值,分别存储在变量X_train与y_train之中。

【Python机器学习】核心数、进程、线程、超线程、L1、L2、L3级缓存

如何知道自己电脑的CPU是几核的,打开任务管理器(同时按下:Esc键、SHIFT键、CTRL键) 然后,点击任务管理器左上角的性能选项,观察右下角中的内核:后面的数字,就是你CPU的核心数,下图中我的是16个核心的。 需要注意的是,下面的逻辑处理器:32 表示支持 32 线程(即超线程技术) 图中的进程:和线程:后面的数字代表什么 在你上传的图片中,“进程:180” 和 “线程:3251”

ASTER L2 表面反射率 SWIR 和 ASTER L2 表面反射率 VNIR V003

ASTER L2 Surface Reflectance SWIR and ASTER L2 Surface Reflectance VNIR V003 ASTER L2 表面反射率 SWIR 和 ASTER L2 表面反射率 VNIR V003 简介 ASTER 表面反射率 VNIR 和 SWIR (AST_07) 数据产品 (https://lpdaac.usgs.gov/documen

NASA:ASTER L2 表面辐射率(E(辐射率)和 T(地表温度)) V003数据集

ASTER L2 Surface Emissivity V003 ASTER L2 表面辐射率 V003 简介 ASTER L2 地表发射率是一种按需生成的产品((https://lpdaac.usgs.gov/documents/996/ASTER_Earthdata_Search_Order_Instructions.pdf)),利用 8 至 12 µm 光谱范围内的五个热红外(TIR)

【Arm Cortex-X925】 -【第九章】-L2 内存系统

9. L2 内存系统 Cortex®-X925 核心的 L2 内存系统通过 CPU 桥接器将核心与 DynamIQ™ Shared Unit-120 连接。它包括私有的 L2 缓存。 L2 缓存是统一的,并且对集群中的每个 Cortex®-X925 核心都是私有的。 以下表格显示了 L2 内存系统的特点。 9.1 L2 缓存 集成的 L2 缓存处理来自指令和数据侧的指令和数据请求,以及

第L2周:机器学习-线性回归

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 目标: 学习简单线性回归模型和多元线性回归模型通过代码实现:通过鸢尾花花瓣长度预测花瓣宽度 具体实现: (一)环境: 语言环境:Python 3.10 编 译 器: PyCharm 框 架:scikit-learn (二)具体步骤: 造个数据集,内容格式如下: 导入库 import pandas as p

【书生大模型实战】L2-茴香豆:企业级知识问答工具实践闯关任务

一、关卡任务 基础任务(完成此任务即完成闯关) 在 InternStudio 中利用 Internlm2-7b 搭建标准版茴香豆知识助手,并使用 Gradio 界面完成 2 轮问答(问题不可与教程重复,作业截图需包括 gradio 界面问题和茴香豆回答)。知识库可根据根据自己工作、学习或感兴趣的内容调整,如金融、医疗、法律、音乐、动漫等(优秀学员必做)。 如果问答效果不理想,尝试调整正反例

老学员衣锦还传智,“浪漫”约会平面小伙伴

老学员衣锦还传智,“浪漫”约会平面小伙伴      正所谓“博观而约取,厚积而薄发”,多多学些技术,尽快掌握经验,总归是件好事情!      对于广州传智网页平面设计的娃子们来说,学习技能,学习最新的技术那完全不是事儿!因为平面UI设计培训课程的李晨老师,高志远老师,邵山欢老师,等等都是学员们公认的设计大亨!而学员们现在最缺什么呢?大家目前都是在广州传智教室里苦练“绝技”

【公众号】欢迎关注本人微信公众号:一枝花算不算浪漫

欢迎大家关注本人公众号:一枝花算不算浪漫 扫码关注: 关注后会为大家分享最新的原创技术文章,2020年 让我们一起成长!!

机器学习(5)--正则化之L1和L2正则化

文章目录 正则化一、正则化的基本原理二、L1正则化(Lasso)三、L2正则化(Ridge)四、L1与L2正则化的比较 总结 正则化 正则化是一种在机器学习和深度学习中常用的技术手段,旨在提高模型的泛化能力,减少过拟合现象。它通过向模型的损失函数中添加一个正则化项来实现,这个正则化项是对模型复杂度的惩罚。L1正则化和L2正则化是两种最常用的正则化方法,它们各有特点和适用场景。