当前位置:   article > 正文

child兄弟法将树转化为二叉树+parent指针(C语言)_孩子兄弟表示法转换成二叉树

孩子兄弟表示法转换成二叉树

孩子兄弟表示法

目录

孩子兄弟表示法

1.孩子兄弟表示法介绍 

2.孩子兄弟表示法特点

3.parent指针

4.实验案例+核心代码+源码(写得有点繁琐,而且里面包括对文件的处理,应用场景不同)

 核心代码:

源码(存在不足,主要还是想突出一下孩子兄弟法):


1.孩子兄弟表示法介绍 

孩子兄弟法可以将一般的树转化为二叉树处理。

任意一棵树,它的结点的第一个孩子如果存在就是唯一的,它的右兄弟如果存在也是唯一的。因此,我们设置两个指针,分别指向该结点的第一个孩子和此结点的右兄弟。

结点结构图如下表所示:

  其中,data是数据域;firstchild为指针域,指向该结点的第一个孩子rightsib是指针域,指向该结点的右兄弟

这样说太抽象了,举个栗子:

我们从根结点来判断,还记得孩子兄弟法怎么表示的了吗?我们一一对应就好了。

 

所以根结点的firstchild指向 A结点rightsibnull:                        

    

 好,第一步完成之后,我们再来看看A

 

 

 然后就是C和B依次判断,由于C和B的第一个孩子和右兄弟都不存在,都为null,所以之前的树用孩子兄弟法表示为:

 

2.孩子兄弟表示法特点

我们再来看看,这是一般的树

在这里插入图片描述

 孩子兄弟法表示树的结构图

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/692691
推荐阅读
相关标签
  

闽ICP备14008679号