• Python学习week5-树的特性


    1、树的基本概念

    (1)树:非线性结构,每个元素可以有多个前驱和后继;

    (2)树的结点:树种的数据元素;结点的度:结点拥有子树的数目

    2、二叉树

    (1)二叉树:每个结点最多2棵子树;二叉树是有序树,左子树、右子树是顺序的,不能交换次顺;

    (2)满二叉树:

      ①:一颗二叉树的所有分支结点都存在左子树和右子树,并且所有叶子结点只存在最下面一层;

      ②:k为深度,则结点数为2^K-1;例如:k=4 则结点数为2^4=16-1=15

    3、完全二叉树

    (1)完全二叉树:k-1层一定是个满树,低层的叶子结点必须靠左边放;

    4、二叉树特性

    ①:在二叉树的第i层上,至多有2^(i-1)个结点;例如 i=1, 2^0=1, i=2,2^1=2...;

    ②:深度为k的二叉树,至多有2^K-1个结点;k=1:1,k=2:3,k=3:7;

    ③:高度为k的二叉树,至少有k个结点;

    ④:具有n个结点的完全二叉树的深度为int(log₂n)+1或者math.ceil(log₂(n+1));

    ⑤:有而二叉树如下:

    # 有一颗n个结点的完全二叉树,结点按照如图编号;

    • 如果i=1,则结点i是二叉树的根结点;
    • 如果2i>n,则结点i无左孩子,即结点i为叶子结点,否则其左孩子结点编号为2i;
    • 如果2i+1>n,则结点i无右孩子;
  • 相关阅读:
    链表_单链表(插入删除查询)
    OceanBase架构浅析(一)
    电商商品搜索现状
    ASP.NET MVC 源码分析(二) —— 从 IRouteBuilder认识路由构建
    ASP.NET MVC 源码分析(一)
    RPC框架分析
    RPC简介
    Performance Metrics(性能指标2)
    Performance Metrics(性能指标1)
    Introduction(本书简介)
  • 原文地址:https://www.cnblogs.com/soulgou123/p/9608727.html
Copyright © 2020-2023  润新知