二叉树的遍历

简介: 简单遍历

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

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

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

先序遍历

若二叉树为空,则空操作;
否则:(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); 
}

}

相关文章
|
2天前
|
Python
二叉树前中后序遍历
这段内容是关于二叉树的前序、中序和后序遍历的Python实现。`Solution`类包含三个方法:`preorderTraversal`、`inorderTraversal`和`postorderTraversal`,分别返回二叉树节点值的前序、中序和后序遍历列表。每个方法都是递归的,遍历顺序为:前序(根-左-右)、中序(左-根-右)、后序(左-右-根)。
15 4
|
2天前
二叉树遍历及应用
二叉树遍历及应用
43 0
|
2天前
|
算法
带你深入理解二叉树的遍历
带你深入理解二叉树的遍历
|
2天前
【二叉树遍历和练习】
【二叉树遍历和练习】
35 0
|
10月前
1364:二叉树遍历(flist)
1364:二叉树遍历(flist)
|
6月前
|
算法
25 二叉树的遍历
25 二叉树的遍历
18 0
|
9月前
二叉树遍历
二叉树遍历
|
11月前
【二叉树OJ题(二)】前序遍历&&中序遍历&&后序遍历&&另一颗树的子树&&二叉树遍历&&平衡二叉树(上)
【二叉树OJ题(二)】前序遍历&&中序遍历&&后序遍历&&另一颗树的子树&&二叉树遍历&&平衡二叉树(上)
|
11月前
|
存储 搜索推荐
【二叉树OJ题(二)】前序遍历&&中序遍历&&后序遍历&&另一颗树的子树&&二叉树遍历&&平衡二叉树(下)
【二叉树OJ题(二)】前序遍历&&中序遍历&&后序遍历&&另一颗树的子树&&二叉树遍历&&平衡二叉树(下)
|
12月前
|
存储
二叉树的遍历问题
二叉树的遍历问题