搜索
首页 电脑/网络 互联网

如何二叉链表存储的二叉树转换为一维数组结构

全部回答

2018-04-10

0 0
与队列配合操作: 对第 一 层进队; 1.把队头节点的左右节点分别进队,对头节点出队并储存当前数据进数组, 2.重复1,直到当前层均为NULL

2018-04-10

85 0
    const int MaxSize=100;//树中最大节点个数int down=0;//定义下标初始值template <class T>struct PNode //数组元素的类型{ T data; //树中节点的数据信息int parent; //改节点的双亲在数组中的下标};PNode Tree[MaxSize];typedef struct bitnode { char data; struct bitnode *lchild,*rchild; }bitnode,*bintree;//二叉树的二叉链表的存储算法 void createbintree(bintree *t) { char ch; cin>>ch; if(ch=='0') (*t)=NULL; else {(*t)=new bitnode; (*t)->data=ch; createbintree(&(*t)->lchild); createbintree(&(*t)->rchild); } }//将二叉链表转化为双亲表示形式void inorderout(bintree t, int parent) { Tree [down]。
    data = t->data;Tree [down]。
    parent = parent;down++;inorderout (t->lchild, down);inorderout (t->rchild, down); }void main (){ bintree bt; int parent=-1;//定义树的根节点的parentcreatebintree(&bt);inorderout (t, parent);}。

类似问题换一批

热点推荐

热度TOP

相关推荐
加载中...

热点搜索 换一换

电脑/网络
互联网
硬件
电脑装机
程序设计
操作系统/系统故障
笔记本电脑
反病毒
百度
软件
互联网
互联网
QQ
网站推荐
上网帮助
举报
举报原因(必选):
取消确定举报