二叉树的遍历

简介: 简单遍历

遍历定义——指按某条搜索路线遍访每个结点且不重复(又称周游)。

遍历用途——它是树结构插入、删除、修改、查找和排序运算的前提,是二叉树一切运算的基础和核心。

遍历实质——将非线性结构线性化。

先序遍历

若二叉树为空,则空操作;
否则:(1)访问根结点 (D)(2)先序遍历左子树 (L)(3)先序遍历右子树 ®
public void DLR(BiNode p){
if(p!=null){

  System.out.print(p.data); 
  DLR(p.lchild); 
  DLR(p.rchild); 
}

}
image.png

中序遍历

若二叉树为空,则空操作;
否则:(1)中序遍历左子树 (L)(2)访问根结点 (D)(3)中序遍历右子树
public void LDR(BiNode p){
if(p !=null){

  LDR(p.lchild); 
  System.out.print(p.data); 
  LDR(p.rchild); 
}

}

后序遍历

若二叉树为空,则空操作;
否则:(1)后序遍历左子树 (L)(2)后序遍历右子树 ®(3)访问根结点 (D)
public void LRD (BiNode p){
if(p !=null){
LRD (p.lchild);
LRD (p.rchild);

  System.out.print(p.data); 
}

}

相关文章
|
6月前
|
Python
二叉树前中后序遍历
这段内容是关于二叉树的前序、中序和后序遍历的Python实现。`Solution`类包含三个方法:`preorderTraversal`、`inorderTraversal`和`postorderTraversal`,分别返回二叉树节点值的前序、中序和后序遍历列表。每个方法都是递归的,遍历顺序为:前序(根-左-右)、中序(左-根-右)、后序(左-右-根)。
58 4
|
6月前
二叉树遍历及应用
二叉树遍历及应用
75 0
|
6月前
|
算法
带你深入理解二叉树的遍历
带你深入理解二叉树的遍历
|
6月前
【二叉树遍历和练习】
【二叉树遍历和练习】
55 0
|
算法
25 二叉树的遍历
25 二叉树的遍历
28 0
|
存储
二叉树的遍历问题
二叉树的遍历问题
|
C++
【C++】二叉树的遍历:前序、中序、后序、层序
【C++】二叉树的遍历:前序、中序、后序、层序
206 0
【C++】二叉树的遍历:前序、中序、后序、层序
【小白学算法】8.二叉树的遍历,前序、中序和后序
【小白学算法】8.二叉树的遍历,前序、中序和后序
【小白学算法】8.二叉树的遍历,前序、中序和后序