社区讨论

求调

B3642二叉树的遍历参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@m2ovtdf0
此快照首次捕获于
2024/10/25 23:23
去年
此快照最后确认于
2024/10/25 23:23
去年
查看原帖
代码:
CPP
#include <bits/stdc++.h>
using namespace std;
struct programmer {
	char lc;
	char rc;
} tree[130];
char h,h1;
//先序遍历二叉树
inline void TraverseBiTree(char x) {
	if(x=='0') {
		return;
	}
	cout<<x<<" ";
	TraverseBiTree(tree[x].lc);
	TraverseBiTree(tree[x].rc);
}
//中序遍历二叉树
inline void InOrderBiTree(char x) {
	if(x=='0') {
		return ;
	}
	InOrderBiTree(tree[x].lc);
	cout<<x<<" ";
	InOrderBiTree(tree[x].rc);
}
//后序遍历二叉树
inline void PostOrderBiTree(char x) {
	if(x=='0') {
		return ;
	}
	PostOrderBiTree(tree[x].lc);
	PostOrderBiTree(tree[x].rc);
	cout<<x<<" ";
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	long long n;
	cin>>n>>tree[1].lc>>tree[1].rc;
	for(int i=2; i<=n; i++) {
		cin>>tree[i].lc>>tree[i].rc;
	}
	TraverseBiTree(h1);
	cout<<"\n";
	InOrderBiTree(h1);
	cout<<"\n";
	PostOrderBiTree(h1);
	cout<<"\n";
	return 0;
}

回复

1 条回复,欢迎继续交流。

正在加载回复...