本篇会加入个人的所谓鱼式疯言
❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言
而是理解过并总结出来通俗易懂的大白话,
小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的.
🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人能接受我们这个概念 !!!

前言
在上篇中我们学习了 二叉树的基本概念 以及他们的特性结论,并运用到了 具体的题目 中去解决问题 。
而在本篇中,小编讲继续学习 二叉树 的基本操作, 主要围绕着我们 遍历二叉树 来讲解 , 人狠话不多,下面让我们切入主题吧 💥 💥 💥
目录
-
二叉树的遍历初识
-
前序遍历
-
中序遍历
4.后序遍历
-
层序遍历
-
二叉树遍历的应用
一. 二叉树的遍历初识
学习二叉树的结构,最简单的方式就是遍历,所谓遍历 是指 沿着某条搜索路线,依次树中的某个节点均做一次访问, 访问节点所做的操作 依赖于要解决的各种实际问题。
遍历是二叉树是最重要的操作之一,是 二叉树上进行其他运算 的基础
1. 二叉树的遍历简介

在遍历二叉树时, 如果没有进行某种约定,每个人都按照自己的方式来遍历, 得到的结果就比较乱, 如果我们按照某个规则 来遍历, 则每个人对于遍历结果都是相同的 , 如果 N 代表 根节点,L 代表左节点, R 代表 右节点, 那根据遍历的的节点有以下的遍历方式。
-
NLR: 前序遍历 (先序遍历) 根据
根——》 左 ——》 右的顺序对二叉树进行遍历 -
LNR : ==中序遍历 ==: 根据
左——》 根——》 右的顺序 对二叉树进行遍历 -
LRN 后序遍历 : 根据
左——》 右 ——》 根的顺序对二叉树进行遍历
详细的遍历方式, 小编下面细讲哦 💖 💖 💖 💖
在遍历二叉树之前, 我们先用一下代码简单的 构建一颗二叉树
public class MyBinaryTree {
public static class TreeNode {
public TreeNode left;
public TreeNode right;
public char val;
public TreeNode(char val) {
this.val = val;
}
}
private TreeNode root;
// 构造二叉树
public TreeNode createBinaryTree() {
root=new TreeNode('A');
TreeNode B=new TreeNode('B');
TreeNode D=new TreeNode('D');
TreeNode E=new TreeNode('E');
TreeNode H=new TreeNode('H');
TreeNode C=new TreeNode('C');
TreeNode F=new TreeNode('F');
TreeNode G=new TreeNode('G');
root.left=B;
B.left=D;
B.right=E;
E.right=H;
root.right=C;
C.left=F;
C.right=G;
return root;
}
// 前序遍历
void preOrder(Node root);
// 中序遍历
void inOrder(Node root);
// 后序遍历
void postOrder(Node root);
}
二. 前序遍历
1. 前序遍历的特点

按照从左子树开始走,一直 往下递归,每一步所走的路径成为我们的根,先遍历完根之后。
按照根左右的顺序, 当我们走完每个根节点的左子树 时, 先往下递, 再往
回归, 左节点成为新的根, 会到最初的根节点之后,再向右子树进行先递后归的操作,

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



