算法_二叉树_翻转二叉树

文章目录
翻转二叉树1.解法2.总结算法

翻转二叉树
leetcode链接
1.解法
解法思路:
想把二叉树翻转,其实仔细一看,就是把每个二叉树的节点的左右孩子翻转,这样总体效果就是把整个二叉树翻转了。
所以只需要通过一种遍历手段把所有节点都遍历了,然后把每个节点的左右孩子翻转即可。
遍历手段选择:
前序遍历后序遍历层序遍历
这三种方式都可以,但是不要选择中序遍历。我们来考虑下面这棵树:
如果使用中序遍历(1234679)
首先需要先遍历1节点,然后翻转左右孩子,左右孩子都是空节点。然后遍历2节点,翻转左右孩子1和3,树变成了下面这个模样。 然后遍历2的右孩子,注意此时2的右孩子变为了1,但是我们的本意应该是想把3节点的左右孩子翻转,所以使用中序遍历会把某个节点(这个例子中是1节点)的左右孩子翻转两次,还会使得某个节点(这个例子中是3节点)的左右孩子不翻转。所以最好不

算法_二叉树_翻转二叉树最先出现在Python成神之路

版权声明:
作者:玉兰
链接:https://www.techfm.club/p/6954.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>