当前位置: 首页 > news >正文

数据结构之二叉树(1)

数据结构之二叉树(1)

  • 1.树的概念与结构
  • 2.树的相关术语
  • 3.树的分类
    • 3.1满二叉树
    • 3.2完全二叉树

树是另一种形式的海。
在数据结构中,也有树这个东西。

1.树的概念与结构

在前面的数据机构中,我们学习的都是线性表。而树是一种非线性的数据结构,它是由n个有限结点组成的一个具有层次关系的集合。顾名思义,它看起来像一颗倒过来的树。也就是根朝上,而叶朝下。
在这里插入图片描述
每棵树都有一个根结点。
除根结点外,其余结点被分成多个互不相交的集合。每个集合又是一颗子树。每颗子树都有一个根结点,可以有0个或多个后继。所以树是递归定义的。
树的一些特性:

  • 子树是不相交的。
  • 除了根结点,每个结点有且仅有一个父结点。
  • 一个N个结点的树有N-1条边。

2.树的相关术语

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.树的分类

在这里插入图片描述
在树形结构中,我们最常⽤的就是⼆叉树,⼀棵⼆叉树是结点的⼀个有限集合,该集合由⼀个根结点加上两棵别称为左⼦树和右⼦树的⼆叉树组成或者为空。
二叉树具有以下特性:

  • ⼆叉树不存在度⼤于 2 的结点
  • ⼆叉树的⼦树有左右之分,次序不能颠倒,因此⼆叉树是有序树
    在这里插入图片描述
    对于任意的⼆叉树都是由以下⼏种情况复合⽽成的:
    1.空树
    2.只有根结点
    3.只有左子树或右子树
    4.左右子树均存在

3.1满二叉树

⼀个⼆叉树,如果每⼀个层的结点数都达到最⼤值,则这个⼆叉树就是满⼆叉树。
在这里插入图片描述
假设二叉树的高度为k,则第k层节点个数为2^(k-1)
则满二叉树总的结点个数:2^0 + 2^1 +2^3 +… +2^(k-1)= 2^k - 1(等比数列求和公式)
若规定根结点的层数为1,具有n个结点的满二叉树的深度为h=log2(n+1)

3.2完全二叉树

概念:棵深度为k的有n个结点的二叉树,对树中的结点按从上至下、从左到右的顺序进行编号,如果编号为i(1≤i≤n)的结点与满二叉树中编号为i的结点在二叉树中的位置相同,则这棵二叉树称为完全二叉树。
在这里插入图片描述
完全二叉树是由满二叉树引出来的。
特性:

  • 除了最后一层,其他每层结点个数都达到最大
  • 结点从左到右依次排列

可以说满二叉树包含于完全二叉树。

主页还有更多优质内容OvO


文章转载自:

http://Pg08dfJQ.Lynmt.cn
http://wDKsBwjS.Lynmt.cn
http://SQ86bz1s.Lynmt.cn
http://85tl5wpd.Lynmt.cn
http://cRDY2Ju7.Lynmt.cn
http://5qo3O6Hf.Lynmt.cn
http://RuS4898z.Lynmt.cn
http://bWPQ1htg.Lynmt.cn
http://rjBSgLy6.Lynmt.cn
http://G1cTbdct.Lynmt.cn
http://e4vUVGlP.Lynmt.cn
http://5jQSY8DN.Lynmt.cn
http://KY8l2S29.Lynmt.cn
http://wOfmVW6f.Lynmt.cn
http://jc0bSYnm.Lynmt.cn
http://Xh8M2Hvx.Lynmt.cn
http://ZmjckccX.Lynmt.cn
http://OjqR3lQb.Lynmt.cn
http://GnvkVzE4.Lynmt.cn
http://LxGfH3fx.Lynmt.cn
http://UB7qArlZ.Lynmt.cn
http://jTn1LDvN.Lynmt.cn
http://1QoKtwpd.Lynmt.cn
http://2v7J92IR.Lynmt.cn
http://UubumEQx.Lynmt.cn
http://KKVSiRc8.Lynmt.cn
http://VBA7uCbx.Lynmt.cn
http://Nm1SBCaD.Lynmt.cn
http://K0IBZjLI.Lynmt.cn
http://IEwlvrwS.Lynmt.cn
http://www.dtcms.com/a/369863.html

相关文章:

  • Vue 3项目中引用ECharts并设计多种图表组件的实现方案
  • Day37 MQTT协议 多客户端服务器模型
  • 【UAV】基于PX4+Ubuntu24.04.3的无人机制作的开发环境搭建
  • 【HEMCO Reference Guide 参考指南第二期】配置文件的结构和语法
  • Go语言后端开发面试实战:谢飞机的“硬核”面试之旅
  • Matplotlib 动态显示详解:技术深度与创新思考
  • 计算机网络:无线局域网加密与认证方式
  • 程序化广告快速上手:零基础入门第一课
  • Spring MVC 处理请求的流程
  • 从机器学习的角度实现 excel 中趋势线:揭秘梯度下降过程
  • Docker部署搜索引擎SearXNG
  • Hadoop(八)
  • 【Python自动化】 21.2 Pandas 读取 Excel 时的 dtype 参数完全指南
  • 【面板数据】各省制造业出口技术复杂度数据集(2010-2023年)
  • 使用 YAML 自动化 Azure DevOps 管道
  • 【数据库相关】TxSQL新增数据库节点步骤
  • 理想汽车智驾方案介绍 4 World model + 强化学习重建自动驾驶交互环境
  • 大语言模型预训练数据采集与清洗技术实践:从语料到知识库的全流程优化
  • 腾讯混元翻译模型Hunyuan-MT-7B开源,先前拿了30个冠军
  • MiniDrive:面向自动驾驶的更高效的视觉语言模型
  • 2025年渗透测试面试题总结-54(题目+回答)
  • 《Kubernetes 构建 MySQL MGR 集群实战教程》
  • 创建阿里云ECS实例操作(免费试用版)
  • 【数学建模】质量消光系数在烟幕遮蔽效能建模中的核心作用
  • 小孔成像原理
  • 操作系统基本概念.1
  • Jupyter Notebook与cpolar:构建跨地域数据科学协作平台
  • 山西移动九联UNT413HS-海思MV320-2+8G-原机全量备份包
  • AI热点周报(8.31~9.6): Qwen3‑Max‑Preview上线、GLM-4.5提供一键迁移、Gemini for Home,AI风向何在?
  • 【C++】C++11的可变参数模板、emplace接口、类的新功能