反转二叉树的实现


目前自己只能写写LeetCode上简单的算法题,而且还写得不好,有时候结果与设想偏差很大,需要多加努力,认真学习了!

今天完成的一道算法题叫做二叉树翻转,第一个念头竟然是想用栈和队列实现,但结果有了很大的出入。因为队列是不允许放入的值为null,这在设计的时候没有想到。之后采用了递归,将原树的值赋给新树,当然值是要对调,就如下图所示,但是结果却是原树遍历到了最后一个节点后再也回溯不到根节点了。

之后就采用了第三种,采用如同数组调换位置的做法,定义了一个临时的节点用于存放当前节点的左叶子,最后才实现。至于上面一种方法为什么不成功,有机会还是要再去研究一下的。

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM