多叉树的结点:
template<class T>
struct multreenode{
T data; //数据
multreenode *parent; //父节点
multreenode *left; //左兄弟
multreenode *right; //又兄弟
multreenode *firstChild,*lastChild; //第一个子节点,最后一个子节点
};
有数据,父亲结点,左右兄弟节点,第一个子节点和最后一个子节点。
程序的输入是使用广义表表示的多叉树,上图的输入是 a(b(d,e,f),c)#
#表示输入结束。
#include<iostream>
#include<stack>
#include<queue>
using namespace std;
// 多叉树的结构
template<class T>
struct multreenode{
T data; //数据
multreenode *parent; //父节点
multreenode *left; //左兄弟
multreenode *right; //又兄弟
multreenode *firstChild,*lastChild; //第一个子节点,最后一个子节点
};
template<class T>
class multree{
public:
multree():root(NULL){}
multree(T val):Refval(val),root(NULL){}
multree(multree <T> &s); //赋值构造函数
~multree(){destroy(root);}
//判断树是否为空
bool

本文探讨了多叉树的数据结构,详细介绍了每个节点包含的数据、父节点、左右兄弟节点以及第一个和最后一个子节点。通过广义表的形式来表示多叉树,并给出了输入和输出的示例。
最低0.47元/天 解锁文章
838

被折叠的 条评论
为什么被折叠?



