Java二叉树算法实现与应用
二叉树的基本算法写得挺扎实的,Java 实现方式也比较清晰,适合你想自己撸一遍逻辑的时候参考一下。常用的遍历方式——前序、中序、后序,都有,逻辑顺序也挺好懂的。
源码结构不复杂,用TreeNode
类来定义节点,配合递归函数,跑遍历没啥压力。你要是刚好在写相关功能,比如表达式树、目录结构、搜索功能啥的,这套思路就蛮值得参考。
另外还有几个不错的资源可以一起看下,像这个二叉树遍历、排序算法源码,里面讲了不同遍历顺序怎么落到代码上,配合Queue
和Stack
写法也都有提到。
如果你对preOrder
、inOrder
这些函数不熟,可以看看这个二叉树遍历:前序、中序、后序,图解方式讲得还挺清楚。
哦对了,要是你更习惯 Python 写法,那也有Python3 实现二叉树的遍历算法版本,思路差不多,语法更紧凑些,挺适合做对比练习。
建议你边看边敲一遍,尤其是递归和迭代的版本,写一遍才有感觉。如果你还没试过用队列做层序遍历,也可以顺手补上。
1.52KB
文件大小:
评论区