数据结构树

文章目录

🏡作者主页:点击!
🤖数据结构专栏:点击!
⏰️创作时间:2024年12月16日13点20分

空树:节点数为0的树

非空树的特性:

  1. 有且仅有一个根节点
  2. 没有后继的结点称之为叶子节点(终端节点)
  3. 有后继的节点称为分支节点(非终端节点)

除了根节点外,任何一个节点都有且仅有一个前驱
子树:互不相交的有限集合

树是一种递归定义的数据结构

  • 节点的层次(深度)------从下往上数
  • 节点的高度------从下往上数
  • 树的高度(深度)------总共多少层
  • 节点的度------有几个孩子(分支)
  • 树的度------各节点的度的最大值
    有序树:逻辑上看,树中的节点的各子树从左至右是有次序的,不能互换

无序树:逻辑上看,树中的节点的各子树从左至右是无次序的,可以互换
森林:森林是m棵互不相交的树的集合
总结

基本概念:节点、边、根节点、叶子节点、分支节点、子树

节点之间的关系:

  • 节点之间的路径------只能从上往下

节点、树的属性

  • 节点的度------节点的分支数
  • 树的度------树中各节点的度的最大值

有序树VS无序树

  • 逻辑上看,各子树是否有序,位置是否可互换
  • 森林:由 m>=0 个互不相交的数组成森林

树的性质

树的度------各节点的度的最大值

  • 任意节点的度<=m(最多m个孩子)

  • 至少有一个节点度 = m(有m个孩子)

  • 一定是非空树,至少有 m+1 个节点
    m叉树------每个节点最多只能有m个孩子的树

  • 任意节点的度<=m(最多m个孩子)

  • 允许所有节点的度都 < m

  • 可以是空树

二叉树

  • 满二叉树
  • 完全二叉树
  • 二叉排序树
  • 平衡二叉树
    二叉树是递归定义的数据结构
  1. 每个节点至多只能有两颗子树
  2. 左右子树不能颠倒(二叉树是有序树)
    满二叉树

特点:

  1. 只有最后一层有叶子节点
  2. 不存在度为1的节点
  3. 按层序从1开始编号,节点 i 的左孩子为 2i,右孩子为 2i+1,节点 i 的父节点为 i / 2
    完全二叉树

特点:

  1. 只有最后两层可能有叶子节点
  2. 最多只有一个度为 1 的节点
  3. 按层序从1开始编号,节点 i 的左孩子为 2i,右孩子为 2i+1,节点 i 的父节点为 i / 2
    二叉排序树

一颗二叉树或者是空二叉树,或者是具有如下性质的二叉树

​ 二叉排序树可用于元素的排序、搜索

  • 左子树上所有的关键字均小于根节点的关键字
  • 右子树上所有的关键字均大于根节点的关键字
  • 左子树和右子树又各是一颗二叉排序树
    平衡二叉树------树上任一节点的左子树和右子树深度之差不超过1
    性质

树的节点数=总度数+1
存储结构------顺序存储

二叉树的顺序存储中,一定要把二叉树的节点编号与完全二叉树对应起来

n个节点的二叉链表共有n+1个空链域

二叉树的顺序存储中,一定要把二叉树的节点编号与完全二叉树对应起来

Author:DC

相关推荐
程序员吕洞宾7 分钟前
开源多维表格SmartTable V1.6.1:工作流画布,让自动化工作流配置更直观、更方便
java·开源·自动化
我登哥MVP13 分钟前
走进 Gang of Four 设计模式:访问者模式
java·设计模式·访问者模式·原型模式
雪碧聊技术15 分钟前
一文深入理解 Java 函数式编程思想
java·函数式编程
AIGS00119 分钟前
突破语义鸿沟:从向量空间JBoltAI看企业大脑构建逻辑
java·大数据·人工智能·人工智能ai大模型应用
琢磨先生David25 分钟前
OpenJDK 与 Oracle JDK 完整区别
java
倔强的石头10629 分钟前
企业智能设备运维管理系统:靠飞算 JavaAI,告别 Java 低效搬砖日常
java
深盾科技_Virbox40 分钟前
软件授权工具静默安装实践
java·运维·数据库·安全·软件需求
qq_452396231 小时前
第二篇:《Jenkins 从零搭建:安装、配置与第一个 Pipeline》
java·运维·jenkins
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第172题】【07_Redis篇】第8题:`setnx` 做分布式锁存在的问题
java·redis·分布式锁·死锁·setnx
折哥的程序人生 · 物流技术专研1 小时前
Java 23 种设计模式:从踩坑到精通 | 番外:代理 vs 装饰器 —— Spring AOP 到底用了哪个?
java·代理模式·装饰器模式·java面试·java设计模式·springaop·从踩坑到精通