为什么要将树,森林进行二叉树的转换呢?因为二叉树在查找的效率很高,而树的查找效率则相对低下!
树转换成相应的二叉树分成三个步骤:
1.在树中所有的兄弟结点之间加一条连线!
2.对每个结点,除了保留与其长子的连线外,去掉该结点与其他孩子的连线!
3.进行旋转调整位置!
看图:
森林转换成相应的二叉树分成三个步骤:
1.首先将每课树转换成二叉树!
2.然后将每课树的根结点连接起来!
3.进行旋转调整位置!
看图:
二叉树到树,森林的转换:
1.若结点X是其父节点的左孩子,则把右孩子,右孩子的右孩子...都与其父节点连接起来!
2.去掉原来所有父节点与右孩子之间的连线!