社区讨论
新人刚学二叉树,10分求调
P1305新二叉树参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @lo8evm38
- 此快照首次捕获于
- 2023/10/27 17:29 2 年前
- 此快照最后确认于
- 2023/10/27 17:29 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
int ans = 0;
struct T
{
int ll ;
int rr ;
char v ;
}node[1000010];
void qxbl(int root2)
{
printf("%c", node[root2].v);
if (node[root2].ll != -1)
qxbl(node[root2].ll);
if (node[root2].rr != -1)
qxbl(node[root2].rr);
}
int main()
{
int n;
cin >> n;
int ff = 1, aa = 0;
for (int i = 1; i <= n; i++)
{
node[i].ll=-1,node[i].rr=-1,node[i].v='*';
char root1, l, r;
cin >> root1 >> l >> r;
if (ff)
{
aa = root1 - 'a';
ff = 0;
}
node[root1 - 'a'].v = root1;
if (l != '*')
{
node[l - 'a'].v = l;
node[root1 - 'a'].ll = l - 'a';
}
if (r != '*')
{
node[r - 'a'].v = r;
node[root1 - 'a'].rr = r - 'a';
}
}
qxbl(aa);
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...