UVA122 树的层次遍历 Trees on the level

知识点:二叉树

需要注意的点:层序遍历的最后不能输出空格,否则会WA

又是傻逼错误找了半天,第一个是输入处理的时候后面的那个括号忘记去了,第二个是输出层序遍历的时候最后面不能有空格,我在那里看的icpc的格式不像pat的那么严格,后面有空格都不管的,就没有去,结果也是wa了,去掉就过了

这道题我的思路就是先建树,然后层序遍历,难点就在建树上面,需要分类讨论,即使如此我也觉得这个题没有难到蓝题,

字符串为空,说明这个时候就要插入节点了,最后面要返回,如果节点为空,那么我们插入节点,如果节点不为空,里面的值为-1,还是正常更新,如果节点不为空,里面的值不是-1,那么说明这是多次插入同一个节点了,更新全局标志变量为否,

字符串不为空,说明还要向下接着递归,但是要先判断一下当前根节点是不是-1,如果是,说明这个位置的节点还没有,那么创建一下,更新值为-1,方便后面插入或者层序遍历的时候判断,然后,接着向下递归就行了,

#include <bits/stdc++.h>

using namespace std;

struct node {
	int val;
	int lchild, rchild;
} tree[300];

int tot;
bool flag = true;
vector<int> ans;

void insert(int &root, int val, string s) {
	if (s ==
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值