《计算思维与算法入门》 —2.7.3 树转化为二叉树的算法

举报
华章计算机 发表于 2019/12/10 14:56:07 2019/12/10
【摘要】 本节书摘来自华章计算机《计算思维与算法入门》一书中第2章,第2.7.3节,作者是赵军 等。

2.7.3  树转化为二叉树的算法

对于将一般树结构转化为二叉树,使用的方法称为“Child-Sibling”(Leftmost-Child-Next-Right-Sibling,左儿子右兄弟表示法)法则。以下是其执行步骤:

(1)将节点的所有兄弟节点用横线连接起来。

(2)只保留与最左子节点的连接,删掉其他所有与子节点间的连接。

(3)右子树都顺时针旋转45度。

按照下面的范例实践一次,就可以有更清楚的认识。转化前的多叉树如图2-61所示。

 image.png

图2-61  将此多叉树转化为二叉树

     将树的各层兄弟用横线连接起来,如图2-62所示。

 image.png

图2-62  将各层兄弟用横线连接起来

     只保留最左边的父子节点的连接,删掉其他所有子节点间的连接,如图2-63所示。

 image.png

图2-63  只保留最左边的父子节点的连接

     右子树都顺时针旋转45度,如图2-64所示。

 image.png

图2-64  顺时针旋转45度


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。