二叉树的基本概念(上)

news2024/9/25 6:22:46

文章目录

  • 🍊自我介绍
  • 🍊简介
  • 🍊树的定义
    • 树中的专业术语
    • 树的分类
  • 🍊二叉树的特性讲解


你的点赞评论就是对博主最大的鼓励
当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~


🍊自我介绍

  Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”“内容共创官” ,现在我来为大家介绍一下有关物联网-嵌入式方面的内容。


🍊简介

  世界上的树有千万种,我们这里来学习我们数据结构中的树,它是我们现实生活中倒置的树。之前,我们学习的顺序表,链表,栈、和队列。可以说都是我们的线性结构,也就是我们所谓的一对一的结构,可是现实生活中,我们经常碰到是我们一对多的情况。今天,我们就来研究一下这种一对多的数据结构体----“树”。那么,什么叫做树呢?

🍊树的定义

概述
(1)树由结点组成
(2)树中除根节点外,每一个结点都有一个父节点,但是可以有多个子节点。
(3)根节点没有父节点
在这里插入图片描述

树中的专业术语

节点:父节点,子节点
:结点拥有子树的个数
叶子节点:没有子节点的节点
:一个节点到另一个节点的距离
树的深度:节点的层数,根节点默认为第一层。
有序:树的左右位置不能改变。

在这里插入图片描述

树的分类

一般树:任意一个结点的子节点的个数不受限制,则称为一般树。(子节点可以有多个),如下图:
在这里插入图片描述

二叉树(重点):任意一个节点的子节点的个数最多有两个,且子节点的个数不能更改。
在这里插入图片描述
森林:去掉根节点就称之为森林。
在这里插入图片描述

🍊二叉树的特性讲解

如下图是一颗二叉树,它有一些特性:
在这里插入图片描述

第一层最多有1个节点
第二层最多有2个节点
第三层最多有4个节点
第四层最多有8个节点

第n层最多有 2 n − 1 {2}^{n-1} 2n1个节点

性质1:二叉树的第n层上的结点最多有 2 n − 1 {2}^{n-1} 2n1个节点。

前1层最多一共有1个节点
前2层最多一共有3个节点
前3层最多一共有7个节点
前4层最多一共有15个节点

前n层最多一共有 2 n {2}^{n} 2n-1个节点

性质2:深度为n的二叉树最多有 2 n {2}^{n} 2n-1个节点。

性质3:在任意一颗二叉树中,树叶的数目比度数为2的结点的数目多1。
(推导过程)
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2162775.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Redis入门到精通六】在Spring Boot中集成Redis(含配置和操作演示)

目录 Spring Boot中集成Redis 1.项目创建和环境配置 2.基本操作演示 Spring Boot中集成Redis Spring社区也自定义了一套Redis的客户端,与jedis的操作方式有所差异,Spring中把每个类型的操作都单独封装了起来。下面就让我来带大家了解如何在Spring Boot…

JavaScript动态数据可视化

一、引言 在前端开发中,JavaScript无疑是最核心的技术之一。它能够处理各种交互逻辑,实现复杂的功能。本文将通过一个动态数据可视化的案例,展示如何使用JavaScript实现复杂功能。动态数据可视化能够将大量数据以直观、生动的方式呈现&#…

从 Tesla 的 TTPoE 看资源和算法

特斯拉的 ttpoe 出来有一段时间了,不出所料网上一如既往的一堆 pr 文,大多转译自 演讲 ppt 和 Replacing TCP for Low Latency Applications,看了不下 20 篇中文介绍,基本都是上面这篇文章里的内容,车轱辘话颠来倒去。…

Python网络爬虫获取Wallhaven壁纸图片(源码)

** 话不多说,直接附源码,可运行! ** import requests from lxml import etree from fake_useragent import UserAgent import timeclass wallhaven(object):def __init__(self):# yellow# self.url "https://wallhaven.cc/search?co…

【C++篇】手撕 C++ string 类:从零实现到深入剖析的模拟之路

文章目录 C string 类的模拟实现:从构造到高级操作前言第一章:为什么要手写 C string 类?1.1 理由与价值 第二章:实现一个简单的 string 类2.1 基本构造与析构2.1.1 示例代码:基础的 string 类实现2.1.2 解读代码 2.2 …

电池快充协议芯片

1:18650充电快充规则 电池知识 | 东莞市恒帝电子科技有限公司 (heldee.com) 锂电池快速充电知识【钜大锂电】 (juda.cn)18 锂电池和18650锂电池能不能快速充电,四种充电方式讲解 | 东莞市恒帝电子科技有限公司 (heldee.com) 2:国产厂家 …

数据库课程 CMU15-445 2023 Fall Project-2 Extendible Hash Index

0 实验结果 tips:完成项目的前提不需要一定看视频 1 数据结构:扩展哈希 解释下这张图: 图中header的最大深度2,directory最大深度2,桶的容量2。 最开始的时候只有一个header。 插入第一个数据,假设这个数据对应的哈希…

安谋科技发布全新自研“玲珑”多媒体处理器

当前,受视频直播、AR/VR、智驾智舱等新兴应用场景和使用人群的飞速增长,视频编解码及显示处理领域呈现出旺盛需求,进而带动了下游设备数量不断攀升。以智能汽车为例,根据盖世汽车研究院的产业报告显示,预计2025年国内车…

【GeekBand】C++设计模式笔记4_Strategy_策略模式

1. “组件协作”模式 现代软件专业分工之后的第一个结果是“框架与应用程序的划分”,“组件协作”模式通过晚期绑定,来实现框架与应用程序之间的松耦合,是二者之间协作时常用的模式。典型模式 Template MethodStrategyObserver / Event 2.…

如何确定SAP 某些凭证或者单号的号码编码范围的 OBJECT 是什么?

在SAP的运维或者项目实施中,有时会如何确定SAP 某些凭证或者单号的号码 OBJECT 是什么? 一般一下常用的可以通过事务代码 例如: XDN1 Create Number Ranges for Customer Accounts,定义客户编码FBN1查看维护会计凭证号范围 我…

【项目】多设计模式下的同步异步日志系统

文章目录 项目介绍开发环境核心技术日志系统介绍为什么需要日志系统日志系统技术实现同步写日志异步写日志 相关技术知识补充不定参函数不定参宏函数的使用C中不定参函数的使用C中不定参函数的使用 设计模式单例模式工厂模式建造者模式代理模式 日志系统框架设计模块划分日志等…

springboot+阿里云物联网教程

需求背景 最近有一个项目,需要用到阿里云物联网,不是MQ。发现使用原来EMQX的代码去连接阿里云MQTT直接报错,试了很多种方案都不行。最终还是把错误分析和教程都整理一下。 需要注意的是,阿里云物联网平台和MQ不一样。方向别走偏了。 概念描述 EMQX和阿里云MQTT有什么区别…

springboot整合openfeign

文章目录 准备一、引入必要依赖二、写一个feign client并暴露到注册中心2.1 client2.2 开启Feign客户端功能 三、别的服务引入IProductClient并调用方法3.1 建一个order-service,引入IProductClient所在模块3.2 注入IProductClient,并调用方法 四、启动服…

Github优质项目推荐-第一期

文章目录 Github优质项目推荐一、【free-for-dev】,88.4k stars二、【linux-command】,31.5k stars三、【system-design-primer】,270k stars四、【GitHub-Chinese-Top-Charts】,99.1k stars五、【Docker-OSX】,46k st…

分布式计算框架

进入Scala模式 终端里输入Scala 创建一个新的Scala文件 vim 文件名.scala 复制粘贴代码 ctrlshift c/v 使用vim 先进入插入模式,可以通过按i键来实现,然后粘贴代码,完成后按Esc键退出插入模式,保存并退出可以通过输入:wq然后按…

HarmonyOS开发之利用TextPicker实现日期选择框只有【年】

效果图&#xff1a; 一&#xff1a;实现年份数组 function generateYearArray(startYear, endYear) {const yearArray [];for (let year startYear; year < endYear; year) {yearArray.push(year年);}return yearArray; } 二&#xff0c;设置年份区间&#xff08;1995,2…

每日论文2——用于锁相环应用的0.025%直流电流失配电荷泵

《A 0.025% DC Current Mismatch Charge Pump for PLL Applications 》2021 IEEE International Midwest Symposium on Circuits and Systems (MWSCAS) The Key Lab of micro-nano electronics and system integration of Xian city, Xian 本文结构主要不同是仅用了一个OPA&…

JAVA并发编程系列(11)线程池底层原理架构剖析

面试官&#xff1a;说说JAVA线程池的几个核心参数&#xff1f; 之前我们用了10篇文章详细剖析了synchronized、volatile、CAS、AQS、ReentrantLock、Semaphore、CountDownLatch、CyclicBarrier、并发锁、Condition等各个核心基础原理&#xff0c;今天开始我们说说并发领域的各种…

基于单片机的精确电压表DA-AD转换

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于51单片机&#xff0c;采用DAC0832和ADC0832检测电压&#xff0c;0到8.5V&#xff0c;设计复位电路 LED管显示实际稳压值&#xff0c;初始电压0 二、硬件资源 基于KEIL5编写C代码&#xff0c…