开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第二十二天,点击查看活动详情
二叉树概念
-
二叉树:每个节点最多只能有两个子节点的一种形式
-
二叉树的子节点分为左节点和右节点
-
满二叉树:该二叉树的所有叶子节点都在最后一层,并且节点总数= 2^n^ -1 , n 为层 数
-
完全二叉树:该二叉树的所有叶子节点都在最后一层或者倒数第二层,而且最后一层 的叶子节点在左边连续,倒数第二层的叶子节点在右边连续
二叉树遍历
前序遍历:==先输出父节点==,再遍历左子树和右子树
中序遍历:先遍历左子树,==再输出父节点==,再遍历右子树
后序遍历:先遍历左子树,再遍历右子树,==最后输父节点==
父节点输出位置判断是属于哪一个序遍历
二叉树遍历步骤(前、中、后序)
-
创建一个二叉树
-
前序遍历
- 先输出当前节点(初始为根节点开始遍历)
- 判断==左子节点==是否为空,为空,则递归继续前序遍历
- 判断==右子节点==是否为空,为空,则递归继续前序遍历
-
中序遍历
- 若当前节点的==左子节点==不为空,则递归中序遍历
- 输出当前节点
- 若当前节点的==右子节点==不为空,则递归中序遍历
-
后续遍历
- 若当前节点的==左子节点==不为空,则递归后序遍历
- 若当前节点的==右子节点==不为空,则递归后序遍历
- 输出当前的节点