浅谈树

浅谈树

​ 树是什么: 树是一种非线性的结构,具有‘一对多’ 的特性。下图是一个简单的树结构

  • 树的节点
    • 节点: 每一个树的元素可以被认为是一个节点 A,B,C都是树的节点
    • 父节点: B,C的父节点是A
    • 兄弟节点:B,C互为兄弟节点
    • 根节点: A为这棵树的根节点
    • 子节点: B,C为A的子节点
    • 叶子节点: 类似于B,C节点这样没有子节点的节点称为叶子节点
  • 节点的度和深度
    • 度 : A下有两个节点,那么A的度为2 ,A的度是最大的,那么这棵树的度就为2
    • 深度:A的深度为1,B,C深度为2,那么 最大的深度就是树的深度 为2
  • 有序树 无序树
    • 有序树:如果树中结点的子树从左到右看,谁在左边,谁在右边,是有规定的,这棵树称为有序树;反之称为无序树。
    • 无序树: 。。。

简单介绍一下树以后,后面主要围绕二叉树进行描述。


  • 二叉树的结构
    • 简单地理解,满足以下两个条件的树就是二叉树:
      1. 本身是有序树;
      2. 树中包含的各个节点的度不能超过 2,即只能是 0、1 或者 2;
      3. 书的两个节点被称之为左节点,和右节点;

​ 树拥有一个根节点,根节点下拥有不同的子节点。

//java中的二叉树
// 二叉树的结构 
class TreeNode {
    //存储的值
       int val;
    // 左子节点
       TreeNode left;
	// 右子节点
       TreeNode right;
   
       TreeNode(int x) {
           val = x;
       }
   }

经过前人的总结,二叉树具有以下几个性质:

  1. 二叉树中,第 i 层最多有 2i-1 个结点。
  2. 如果二叉树的深度为 K,那么此二叉树最多有 2K-1 个结点。
  3. 二叉树中,终端结点数(叶子结点数)为 n0,度为 2 的结点数为 n2,则 n0=n2+1。
  • 稍后补充
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值