栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++遍历输出二叉树

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++遍历输出二叉树

//Author:PanDaoxi
#include 
using namespace std;
struct node{
	int left,right; //左孩子和右孩子
	char value; //值 
}data[101];
int root=0,cnt; //根节点和记录有效字符
char ch; //输入的数据
//构建二叉树
int buildTree(int bt){ //参数:结点的编号 
	cin>>ch;
	if(ch=='.'){ //判断是否为空结点
		bt=0; //赋值为0 
		return bt; //跳出程序 
	} 
	else{ //非空结点,进行先序遍历 
		bt=++cnt; //构造结点 
		data[bt].value=ch; //存放根的值 
		data[bt].left=data[bt].right=0; //左右孩子都归零 
		data[bt].left=buildTree(bt); //递归左子树
		data[bt].right=buildTree(bt); //递归右子树 
	}
	return bt;  //完成递归 
} 
//后序遍历二叉树
void postorder(int bt){
	if(bt){ //非空结点 
		//递归输出根 
		postorder(data[bt].left);
		postorder(data[bt].right);
		cout<
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/346901.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号