树相关概念

树 (tree):

       树是一种常见的数据机构,它是一个由有限节点组成的一个具有层次关系的集合,数据就存在树的 这些节点中。

根节点:

         最顶层只有一个节点,称之为根节点,root节点。

叶子节点:

       如果每个节点下方没有任何分叉的话,就是叶子节点。

节点的高度:

     从某个节点出发,到叶子节点为止,最长简单路径上边的条数,称之为节点的高度。

节点的深度:

        从根节点root出发,到某个节点边的条数,称为该节点的深度。

二叉树:

       每个节点至多有两个子节点的树称为二叉树。

       二叉树世界中,最为重要的概念是 平衡二叉树、二叉查找树、红黑树

2. 平衡二叉树的性质:

  • (1) 树的左右高度差不能超过 1
  • (2) 任何往下递归的左子树与右子树,必须符合第一条性质
  • (3) 没有任何节点的k空树和只有根节点的树也是平衡二叉树

 二叉查找树

         二叉查找树又称为二叉搜索树, 即 Binary Search Tree, 也称为 二叉排序树。Java中集合的最终 目的就是加工数据,二叉查找树也是如此。

       二叉查找树特殊要求:

  • 1. 对于任意节点来说: 它的左子树上所有的节点的值都小于它,而它的右子树上所有节点的值都大于它。
  • 2.查找过程: 从根节点开始,沿简单的判断往下走,小于节点值往左走,大于节点的值往右走,直到找到 目标数据或者达到叶子节点还未找到。

      遍历所有节点常用的方式: 前序遍历、中序遍历、后序遍历

三者规律如下:

  • (1). 在任何递归子树中,左节点一定在右节点之前先遍历
  • (2). 前序、中序、后序,仅指根节点在遍历时的位置顺序
  •  
  • 前序遍历: 根节点、左节点、右节点
  • 中序: 左节点、根节点、右节点
  • 后序: 左节点、右节点、根节点
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值