zoukankan      html  css  js  c++  java
  • 10. 王道考研-树与二叉树

    一、树的概念

    树是一种逻辑结构,是n(n>=0)个节点的有限集合,n=0时,称为空树,而任意的非空树满足:
    1) 有且仅有一个特定的称为的节点
    2) 当n> 1时,其余结点可分为m (m>0)个互不相交的有限集合,其中每一个集合本身又是一棵树,称为根结点的子树。

    图片

    基本术语:

    图片

    森林是m(m>=0)棵互不相交的树的集合

    二、树的性质

    1. 树的结点数 = 所有节点的度数+1 = 边数 + 1
    2. 度为m的树中第 i 层至多有 m^(i-1)个节点
    3. 具有n个结点的m叉树的最小高度为⌈log m( n(m-1)+1) ⌉

    三、二叉树

    二叉树是n (n≥0) 个结点的有限集合。

    1. n=0时,二叉树为空;
    2. n>0时,由根结点和两个互不相交的被称为根的左子树和右子树组成。左子树和右子树也分别是一棵二叉树。

    3.1 特殊二叉树

    1. 满二叉树:一棵高度为h,且含有2^h - 1个结点的二叉树为满二叉树。

    图片

    1. 完全二叉树:设一个高度为h、有n个结点的二叉树,当且仅当其每个结点都与高度为

    h的满二叉树中编号1 ~n的结点一一对应时, 称为完全二叉树。

    图片

    1. 二叉排序树:一棵二叉树,若树非空则具有如下性质:对任意结点若存在左子树或右子树,则其左子树上所有结点的关键字均小于该结点,右子树上所有结点的关键字均大于该结点。

    2. 平衡二叉树:树上任意结点的左子树和右子树的深度只差不超过1。

    图片

    3.2 二叉树的性质

    • 非空二叉树的 叶子节点数 = 度为2的节点数+1,即 n0 = n2 + 1
    • 非空二叉树的第k层至多有2^(k-1)个节点
    • 高度为h的二叉树至多有2^h - 1 个节点
  • 相关阅读:
    Linux下编译安装redis
    docker搭建swoole的简易的聊天室
    Linux下面安装swoole
    laravel命令
    史上最污技术解读,60 个 IT 术语我竟然秒懂了.....
    redis集群搭建
    Windows安装MongoDB
    十大经典排序算法(动图演示)
    消息中间件基础
    laravel邮件发送
  • 原文地址:https://www.cnblogs.com/theory/p/13338739.html
Copyright © 2011-2022 走看看