说到“树”这种结构想到的自然是遍历。“树”的遍历分为,前序遍历、中序遍历、后序遍历、层序遍历四种。下面用java代码实现。
一、先序遍历
定义:先访问根节点,再访问左节点(如果左节点也是一颗二叉树则对该二叉树做同样操作),再访问右节点。
即:根->左->右
代码实现:递归算法。(递归算法的写法:先写递归终止条件,再写递归体)
二分搜索树结构如下:
代码解释:首先进行操作的 root节点,如果不为空则输出一次,并将左孩子节点当成参数传入,左孩子节点被当成一棵二叉树进行遍历,如此往复直到左孩子节点为空,然后操作右孩子节点。
同理中序遍历代码如下:
后序遍历: