coding A&D:森林与二叉树的转换

首先,树转二叉树:

这里写图片描述

「1」兄弟+横线 
树中的每一个结点,如果该结点有兄弟结点,那么就在这几个兄弟结点之间进行连线。

这里写图片描述

「2」保存长子线 
对于树中的每一个结点,如果其有多个子节点,保存其第一个子节点的连线,去除其他子节点的连线。

这里写图片描述

「3」调整位置 
对每个结点调整一定的位置,使其符合二叉树的标准。

这里写图片描述

1. 森林转换为二叉树
【1】将每课树转换成二叉树
【2】将每课树的根结点连接起来 
【3】把每棵树的根当做兄弟结点处理,兄弟加横线旋转调整位置

「例题」

这里写图片描述

【1】将每课树转换成二叉树

这里写图片描述

【2】根结点横线连接

这里写图片描述

【3】调整位置,横线变斜线

这里写图片描述

2.二叉树转化为森林:

【1】根+左子树,根+左子树,... ...

【2】调整位置

这里写图片描述

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值