题目1523:从上往下打印二叉树-九度

算法学习20-如何直观的打印一颗二叉树 算法学习20-如何直观的打印一颗二叉树 算法思路 树的打印方法是用中序的方法进行输出 在输出其实是图形输出的问题了,在这里就不做过多阐述了。 用到了sstream库函数的内容 /*库定义了三种类: * istringstream、ostringstream和stringstream,分别用来进行流的输入、输出和输入输出操作。 * 1.stringstream::str(); returns ... 阅读详情
题目描述:
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
输入:
输入可能包含多个测试样例,输入以EOF结束。
对于每个测试案例,输入的第一行一个整数n(1<=n<=1000, :n代表将要输入的二叉树元素的个数(节点从1开始编号)。接下来一行有n个数字,代表第i个二叉树节点的元素的值。接下来有n行,每行有一个字母Ci。
Ci=’d’表示第i个节点有两子孩子,紧接着是左孩子编号和右孩子编号。
Ci=’l’表示第i个节点有一个左孩子,紧接着是左孩子的编号。
Ci=’r’表示第i个节点有一个右孩子,紧接着是右孩子的编号。
Ci=’z’表示第i个节点没有子孩子。
输出:
对应每个测试案例,
按照从上之下,从左至右打印出二叉树节点的值。
样例输入:
7
8 6 5 7 10 9 11
d 2 5
d 3 4
z
z
d 6 7
z
z
样例输出:

8 6 10 5 7 9 11

推荐指数:※

来源:http://ac.jobdu.com/problem.php?pid=1523

BFS

#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<vector>
#include<queue>
using namespace std;
typedef struct node{
	int val;
	int left;
	int right;
}node;
vector< node > tree;
void print_tree(int n)
{	
	if(n>0){
		queue <int> q;
		printf("%d",tree[1].val);
		if(tree[1].left!=-1)
			q.push(tree[1].left);
		if(tree[1].right!=-1)
			q.push(tree[1].right);
		while(!q.empty()){
			int tmp;
			tmp=q.front();
			printf(" %d",tree[tmp].val);
			q.pop();
			if(tree[tmp].left!=-1)
				q.push(tree[tmp].left);
			if(tree[tmp].right!=-1)
				q.push(tree[tmp].right);
		}
	}
}
int main()
{
	int n,i;
	while (scanf("%d",&n)!=EOF){
		tree.resize(n+1);
		for(i=1;i<=n;i++)
			scanf("%d",&tree[i].val);
		for(i=1;i<=n;i++){
			char ch[2];
			scanf("%s",ch);
			if('d'==ch[0])
				scanf("%d%d",&tree[i].left,&tree[i].right);
			else if('l'==ch[0]){
				scanf("%d",&tree[i].left);
				tree[i].right=-1;
			}
			else if('r'==ch[0]){
				tree[i].left=-1;
				scanf("%d",&tree[i].right);
			}
			else{
				tree[i].right=-1;
				tree[i].left=-1;
			}
		}
		print_tree(n);
	}
	return 0;
}


Java对接(BSC)币安链 | BNB与BEP20的开发实践(三)水龙头 WEB3 这一节我们讲一个币安测试链如何获取到BNB、USDT等BEP20数字货币(水龙头)来让我们前期测试开发。如图:我们将创建的地址填入相应输入框,来获取到测试BNB以及其他BEP20数字币。发币可能需要交易等待,请耐心等待即可,交易完成后,币会到达您的地址内。上一节我们用代码来实现BNB转账、BEP20转账、链上交易监控。2.MetaMask(小狐狸)浏览器插件 🪜。使用EDGE浏览器可以在浏览器直接打开。使用Chrome浏览器,请使用🪜打开。基本工作就绪后,即可进行开发测试。3. 测试区块链浏览器 🪜。 阅读详情

相关推荐

国产化办公新选择:在银河麒麟V10上部署ToDesk远程桌面

本文详细介绍了在国产操作系统银河麒麟V10上部署ToDesk远程桌面的完整指南。作为国产远程控制工具,ToDesk在连接速度、系统适配性和用户体验方面表现优异,特别适合国产化办公场景。文章包含X86和ARM架构的安装步骤、常见问题排查及性能优化技巧,帮助用户高效实现远程办公。

weixin_33742618的博客 234

算法:如何较为直观地打印二叉树

二叉树可以用常规的三种遍历结果来描述其结构,但是不够直观,尤其是二叉树中有重复 值的时候,仅通过三种遍历的结果来构造二叉树的真实结构更是难上加难,有时则根本不可能。 给定一棵二叉树的头节点 head,已知二叉树节点值的类型为 32 位整型,请实现一个打印二叉 树的函数,可以直观地展示树的形状,也便于画出真实的结构。(1)第一步要解决的问题是用什么样的方式可以无歧义的打印二叉树,也就是设计打印的样式。这里我们是这样做的:假设有二叉树如下 打印出的样式如下:怎么看呢?(2)第二个要解决的问题:规定节点打印时占

OceanStar的博客 1181

SAP FB03凭证修改实战:巧用BAPI FI_DOCUMENT_CHANGE更新抬头与行项目

本文详细介绍了SAP FB03凭证修改的实战技巧,重点解析了BAPI FI_DOCUMENT_CHANGE的使用方法。通过该接口,用户可以在不冲销原凭证的情况下直接更新抬头文本(BKTXT)和行项目文本(SGTXT),确保凭证编号连续且符合审计要求。文章包含核心机制解析、完整实现步骤、错误处理方案以及高级应用场景,帮助开发者高效完成SAP财务凭证修改。

weixin_29251567的博客 425

关于二叉树的按层打印

本文的思路来自于牛客网左程云大大的二叉树视频 视频地址 http://www.nowcoder.com/courses/1/1/1 题目要求如下: 至于如何找大家看视频吧,左老大讲的比我清楚,下面是我实现的代码 class TreeNode { int val = 0; TreeNode left = null; TreeNode

程序员小董的专栏 3045

win10自动修复-无限循环【通用完美】超简单解决办法

2020.02.14今个我的笔记本电脑(Thinkpad Carbon 7 X1)(win10)早晨起来发现蓝屏,上面显示自动修复失败,重启后依然自动修复失败,不断手动重启,始终是修复失败。然后上网开始搜集资料找解决办法。 前边介绍关闭自动修复,如何找出错文件的方法;如果想看最终解决办法,直接看第三部分 上网就会发现这种现象很常见,同时是电脑自动安装系统更新,或者安装某些驱动出现。解决办法也大...

y15941300574的博客 19万+

可信数据空间关键技术和功能架构研究

可信数据空间(TDS)是实现数据安全共享的基础设施,通过数字合约和使用控制技术确保数据跨域流通的可信与安全。其架构包括服务平台和接入连接器,关键技术涵盖访问控制、隐私计算、区块链等。评估重点在于合规性、连接器能力、互联互通及安全体系。核心在于构建规则引擎而非简单数据汇聚,连接器开发比平台建设更重要。当前面临技术成本博弈、跨域身份互认等挑战,需平衡安全、性能与成本,推动数据要素市场发展。

逸尘的专栏 2223

算法之二叉树按层打印

创建一个二叉树节点实体类 /** 1. 二叉树的 树节点 实体类 */ public static class BinaryTreeNode { int value; BinaryTreeNode left; BinaryTreeNode right; } 创建一个二叉树例子 /** 创建以下二叉树 // 1 // / \ //...

azhansy 2190

地方政府预算数据抓取:利用Python爬虫获取预算安排、资金分配与支出情况

爬虫是通过模拟浏览器行为,从互联网上自动获取数据的程序。在本案例中,我们将通过爬虫从地方政府的官方网站或预算公开平台抓取各类预算信息。这些信息一般以HTML网页的形式呈现,可以通过爬虫对网页内容进行解析,提取所需的预算数据。Python作为数据抓取的强大工具,凭借其简洁的语法、强大的第三方库(如requestsSelenium等)以及丰富的数据处理能力,成为了开发爬虫应用的首选语言。

2201_76125261的博客 942

有关哈弗曼树之课后题(6)

首先我们来看我们自己按照哈夫曼树的构造方法得出的答案: .小的数放在左边 .当有重复的权值,也就是我们通过构造得到的树的权值和我们已知的权值重复的时候,首先使用已知的权值。 如图:   我们看到20在23的左边,一般情况下,这样的树构造是没有问题的,但是: 我们构造哈弗曼树的目的是通信,通过编码代替我们想要传达的值,所以一定要注意,编码值,也就是标识(类似我们的身份证号,唯一标识),...

Aran 771

【一 扣子客户案例合集】【 1.3 识典古籍基于扣子智能助手的古籍数字化全流程技术解析】

古籍数字化智能处理系统全流程解析 本文详细介绍了基于扣子智能助手的古籍数字化解决方案,核心技术包括: 多层级架构设计:采用"云-边-端"三层次架构,整合高精度扫描设备与AI处理模块,实现从物理古籍到结构化数据的全流程自动化。 智能图像处理:通过12道预处理工序(包括畸变校正、污渍去除和对比度增强)处理古籍图像,采用改进的EAST算法和ViT模型实现高精度文字检测与识别,准确率达98.7%。 NLP增强处理:结合Transformer-XL预训练模型和N-gram语言模型进行文本校正,基于

商务合作|问题讨论|交流学习 请联系作者微信,加微信请务必注明来意,博客主页有联系方式 1441

深度学习注意力机制新突破:YOLOv8结合SimAM无参数注意力模块,让目标检测更精准!

在计算机视觉领域,注意力机制已成为提升模型性能的关键技术。然而,传统的注意力模块如SENet、CBAM等往往引入大量额外参数,增加了模型的复杂度和计算负担。本文介绍一种创新的无参数注意力机制——SimAM(Simple Parameter-Free Attention Module),并将其成功应用于YOLOv8目标检测框架。SimAM基于神经科学理论,通过定义能量函数为特征图计算3D注意力权重,无需任何额外参数即可显著提升模型性能。本文详细阐述了SimAM的理论基础、实现原理,并提供了完整的YOLOv8集

YOLO 99

九度OJ-题目1523:从上往下打印二叉树

题目链接地址: 九度OJ-题目1523:从上往下打印二叉树 题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行一个整数n(1 Ci=’d’表示第i个节点有两子孩子,紧接着是左孩子编号和右孩子编号。 Ci=’l’表示第i个节点有一个左孩子,紧接着是左孩子的编号

蜗牛 907

计算机组成原理(第三版)唐朔飞-第七章指令系统-课后习题

机器字长是指CPU一次能处理数据的位数通常与CPU的寄存器位数有关。指令字长是指机器指令中二进制代码的总位数。存储字长是指存储单元中存放二进制代码的总位数。三者可以相等也可以不等视不同机器而定。答:OP(4位)A1(6位)A_1(6位)A1​(6位)A2(6位)A_2(6位)A2​(6位)设二地址指令格式为该指令系统的基本格式,4位操作码共有16种编码,其中13种用来定义二地址指令,还剩3种可用作扩展标志。一地址指令条数=3∗26=192。

weixin_45735391的博客 7万+

九度 题目1523:从上往下打印二叉树

题目来源:http://ac.jobdu.com/problem.php?pid=1523

Abner 841

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

【九度】题目1523:从上往下打印二叉树

题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行一个整数n(1 Ci=’d’表示第i个节点有两子孩子,紧接着是左孩子编号和右孩子编号。 Ci=’l’表示第i个节点有一个左孩子,紧接着是左孩子的编号。 Ci=’r’表示第i个节点有一个右孩子,紧接着是右孩子的编号。 Ci=’z’表示

wangzq的专栏 918

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【剑指Offer面试编程题】题目1523:从上往下打印二叉树--九度OJ

这道题目应该一眼就看看出是树的层序遍历,看出来之后也就没有什么可以说的了。注意首先用数据结构保存树,然后利用set数据结构寻找出根节点。然后就是利用队列进行层序遍历。

一路向前 786

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

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

24位ADC为何不如16位好用?噪声博弈决定真实ENOB

ADC位数仅表示理论量化能力,真正决定测量精度的是有效位数(ENOB),它由信噪比(SNR)反推得出,本质是系统级噪声控制的结果。Δ-Σ架构虽标称24位,但其ENOB高度依赖输入参考噪声、电源抑制比(PSRR)、时钟抖动等多参数动态耦合——任一环节恶化都会引发连锁劣化。例如高频电源纹波会突破PSRR防护边界,转化为时钟抖动,指数级拉低SNR;前端运放与基准源的1/f噪声则直接抬高噪声底,吞噬低位有效信息。工业现场常见ENOB缩水至16位以下,根源不在芯片本身,而在PCB布局、电源设计与信号链协同失衡。本文聚

weixin_33863087的博客 398

九度 题目1523:从上往下打印二叉树 题目1521:二叉树的镜像

题目1523:从上往下打印二叉树 题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 输入: 输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行一个整数n(1<=n<=1000, :n代表将要输入的二叉树元素的个数(节点从1开始编号)。接下来一行有n个数字,代表第i个二叉树节点的元素的值。接下来有n行,每行有一个字母Ci。Ci=...

weixin_33989780的博客 80

剑指OFFER之从上往下打印二叉树(九度OJ1523)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34240657的博客 134

【剑指Offer面试题】 九度OJ1523:从上往下打印二叉树

题目链接地址: http://ac.jobdu.com/problem.php?pid=1523题目1523:从上往下打印二叉树时间限制:1 秒内存限制:128 兆特殊判题:否提交:1148解决:484 题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行一个整数n(1<=n<=1000

牧之 1054

九度笔记之 水平打印二叉树

题目 题目1523:从上往下打印二叉树 时间限制:1 秒 内存限制:128 兆 特殊判题:否 提交:18 解决:3 题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行一个整数n(1 Ci=’d’表示第i个节

KingEasternSun的专栏 1468

九度oj 1523 从上往下打印二叉树

原题链接:http://ac.jobdu.com/problem.php?pid=1523 建树,再层次遍历bfs。为了找根方便些,加了father指针。。。 如下: 1 #include<algorithm> 2 #include<iostream> 3 #include<cstdlib> 4 #include<cs...

dong12276的博客 108

考研机试题 九度oj 1523:从上往下打印二叉树

队列,二叉树,广搜的同学可以试一下

mejustdoit的专栏 1367

【九度OJ1523】从上往下打印二叉树

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33767813的博客 106

剑指Offer - 九度1523 - 从上往下打印二叉树

剑指Offer - 九度1523 - 从上往下打印二叉树2013-12-01 00:35 题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 输入: 输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行一个整数n(1<=n<=1000, :n代表将要输入的二叉树元素的个数(节点从1开始编号)。接下来一行有n个数字,代表第i个二叉树...

weixin_30767921的博客 93

剑指Offer--023-从上往下打印二叉树(层次遍历二叉树)

链接 牛客OJ:从上往下打印二叉树 九度OJ:http://ac.jobdu.com/problem.php?pid=1523 GitHub代码: 023-从上往下打印二叉树 优快云题解:剑指Offer–023-从上往下打印二叉树 牛客OJ 九度OJ 优快云题解 GitHub代码 从上往下打印二叉树 1523-从上往下打印二叉树 剑指Of

OSKernelLAB(gatieme) 3318
上一篇: 题目1366:栈的压入、弹出序列-九度
下一篇: 题目1367:二叉搜索树的后序遍历序列-九度
zoushidexing
博客等级 码龄18年 70粉丝 171原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值