算法知识-16-树

一、树的基本概念

度(Degree)

一个结点的子树个数,称为这个结点的度。
树中各结点度的最大值,称为这棵树的度。

深度(Depth)

一棵树中所有的结点层次的最大值称为树的深度。

二、二叉树的概念

定义

二叉树是一种特殊的树型结构,树中结点的度都不大于 2,它是一种最简单且最重要的树。
结点数量
在二叉树的第i层上最多有个2i-1 结点(i>=1)。
深度为k的二叉树最多有2k-1个结点(k>=1)。

特殊二叉树

满二叉树:一棵深度为k且有2k-1个结点的二叉树称为满二叉树。
完全二叉树:二叉树中除去最后一层结点为满二叉树,且最后一层的结点依次从左到右分布。需要注意的是,满二叉树也是完全二叉树。

二叉树的遍历方式

先序遍历(根左右)

访问顺序:访问根结点 -> 遍历左子树 -> 遍历右子树。
先序序列的第一个点是根结点。在子树的先序序列中,第一个点是该子树的根。

中序遍历(左根右)

访问顺序:遍历左子树 -> 访问根结点 -> 遍历右子树。
步骤:
第 1 步:有左子树一直找左子树。
第 2 步:当没有左子树或左子树已经遍历完,访问根结点。
第 3 步:找右子树,重复上述步骤。
中序序列可以通过根结点划分左右子树。

后序遍历(左右根)

访问顺序:遍历左子树 -> 遍历右子树 -> 访问根结点。
步骤:
第 1 步:有左子树一直找左子树。
第 2 步:没有左子树,找右子树,重复上述步骤。
第 3 步:当没有右子树或左右子树已经遍历完,访问根结点。
后序序列的最后一个点是根结点。在子树的后序序列中,最后一个点是该子树的根。
在这里插入图片描述

三、构造树【初赛向】

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/e856e782f40c4b1c9374b65a6fa6a222.png
根据上图所示,我们可以将
先序竖着写
后序竖着倒着写
中序横向写

已知中,先,求后:

已知一棵二叉树的先序遍历序列为 ABCDEFHIJK,中序遍历序列为 FEDCBAHIJK。要求选择出该二叉树的后序遍历序列。
给出了四个选项:
A. FEDCBHIJKA
B. FEDCBAHIJK
C. FEDCBKJIHA
D. FEDCBJIKHA
来,开始画图👇👇
在这里插入图片描述
出来的图还是很容易看的,然后再说明对应的后序

已知中,后,求先

【CSP2019】假设一棵二叉树的后序遍历序列为DGJHEBIFCA,中序遍历序列为DBGEHJACIF,则其前序遍历序列为( )。
a.ABCDEFGHIJ
b.ABDEGHJCFI
c.ABDEGJHCFI
d.ABDEGHJFIC
来,开始画图👇👇
在这里插入图片描述
出图,然后自己找后续吧
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学习threejs,加载天地图

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️Web墨卡托投影 二、&#x…

DCI format2_6会配置在哪些cell上去接收?

根据38.213中的描述,DCI format 2_6可以在PCell和SpCell上检测,而相关cell的定义如上。

C++多线程实战:掌握图像处理高级技巧

文章结尾有最新热度的文章,感兴趣的可以去看看。 本文是经过严格查阅相关权威文献和资料,形成的专业的可靠的内容。全文数据都有据可依,可回溯。特别申明:数据和资料已获得授权。本文内容,不涉及任何偏颇观点,用中立态度客观事实描述事情本身 导读 在当今的计算世界中,…

深度优先遍历(DFS)

深度优先遍历(DFS) 1. 计算布尔二叉树的值2. 求根节点到叶节点数字之和3.二叉树剪枝4.验证二叉搜索树5. 二叉搜索树中第 K 小的元素6. 二叉树的所有路径 深度优先遍历(DFS,全称为Depth First Traversal),是…

免费下载 | 2024算网基础设施成熟度研究报告

《2024算网基础设施成熟度研究报告(2023年)》的核心内容概括如下: 算网基础设施总体发展态势: 算网基础设施成为数字化转型的坚实底座,推动算力与网络的深度融合。 算网基础设施已上升为各国信息战略的重要抓手。 算…

ITK-腐蚀

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 腐蚀原理 ‌‌图像形态学腐蚀是图像处理中的一种基本操作,主要用于图像细化、目标提取、去除小的干扰物体以及在特定…

MySQL多表查询时有哪些连接方式?

大家好,我是锋哥。今天分享关于【MySQL多表查询时有哪些连接方式?】面试题。希望对大家有帮助; MySQL多表查询时有哪些连接方式? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在 MySQL 中进行多表查询时,常见的连接方式有以下…

Ollama管理本地开源大模型,用Open WebUI访问Ollama接口

现在开源大模型一个接一个的,而且各个都说自己的性能非常厉害,但是对于我们这些使用者,用起来就比较尴尬了。因为一个模型一个调用的方式,先得下载模型,下完模型,写加载代码,麻烦得很。 对于程序的规范来说,只要东西一多,我们就需要一个集中管理的平台,如管理python…

Docker 安装 sentinel

Docker 安装系列 1、拉取 [rootTseng ~]# docker pull bladex/sentinel-dashboard Using default tag: latest latest: Pulling from bladex/sentinel-dashboard 4abcf2066143: Pull complete 1ec1e81da383: Pull complete 56bccb36a894: Pull complete 7cc80011dc6f: Pull…

Python实现中国象棋

探索中国象棋 Python 代码实现:从规则逻辑到游戏呈现 中国象棋,这款源远流长的棋类游戏,承载着深厚的文化底蕴与策略智慧。如今,借助 Python 与 Pygame 库,我们能够在数字世界中复刻其魅力,深入探究代码背后…

Spring--07-01---@Transactional注解失效的8大场景

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Transactiona1.默认回滚:RuntimeException 1.Transactional注解失效的8大场景1.数据库引擎是否支持事务3.方法不是public的4.自身调用5.数据源没有配置事…

SMMU软件指南SMMU编程之寄存器

安全之安全(security)博客目录导读 本博客介绍了SMMUv3的编程接口: • SMMU寄存器 • 流表(Stream table) • CD(Context Descriptor) • 事件队列(Event queue) • 命令队列(…

负载均衡oj项目:介绍

目录 项目介绍 项目演示 项目介绍 负载均衡oj是一个基于bs模式的项目。 用户使用浏览器向oj模块提交代码,oj模块会在所有在线的后端主机中选择一个负载情况最低的主机,将用户的代码提交给该主机,该主机进行编译运行,将结果返回…

python 基于 docx 文件模板生成 docx 或 PDF 文件

需求背景 提供一个Word文档模板,使用python程序替换里边的占位符,替换内容包括文本和图片,然后输出docx或者PDF文件。 功能演示 输入示例 输出示例 实现程序 import os import shutil import subprocess import timefrom docx import Doc…

使用 Ansys Fluent 对气体泄漏检测进行建模

了解使用 Ansys Fluent 仿真气体泄漏和确保安全的前沿技术。 挑战 气体泄漏对人类安全和环境构成重大风险。及早检测气体泄漏可以防止潜在的灾难,包括爆炸、火灾和有毒物质暴露。有效的气体泄漏检测系统对于石油和天然气、化学加工和住宅基础设施等行业至关重要。…

Mac软件推荐

Mac软件推荐 截图SnipasteXnipBob 快捷启动Raycast 系统检测Stats 解压缩The UnarchiverKeka(付费) 视频播放IINA 视频下载Downie(付费) 屏幕刘海TopNotchMediaMate(付费)NotchDrop(付费&#x…

在 Kibana 中为 Vega Sankey 可视化添加过滤功能

作者:来自 Elastic Tim Bosman 及 Miloš Mandić 有兴趣在 Kibana 中为 Vega 可视化添加交互式过滤器吗?了解如何利用 “kibanaAddFilter” 函数轻松创建动态且响应迅速的 Sankey 可视化。 在这篇博客中,我们将了解如何启用 Vega Sankey 可视…

阿里云数据库MongoDB版助力极致游戏高效开发

客户简介 成立于2010年的厦门极致互动网络技术股份有限公司(以下简称“公司”或“极致游戏”),是一家集网络游戏产品研发与运营为一体的重点软件企业,公司专注于面向全球用户的网络游戏研发与运营。在整个产业链中,公…

数据地图怎么做?推荐这款数据可视化地图生成器

在数字化与信息化高速发展的今天,企业迎来了前所未有的发展机遇,规模迅速扩张,市场版图不断延伸。然而,伴随着这种快速的发展,一个不容忽视的问题逐渐浮出水面——如何精准高效地掌握分布在各地的分公司、业务点乃至整…

MongoDB存储照片和文件存储照片的区别在那里?

一、维度对比 比较维度MongoDB存储照片文件系统存储照片数据模型使用文档存储数据,可以存储不同结构的照片。以文件的形式存储照片,每个文件独立存在。性能高效的数据检索,适用于大规模应用程序中的高效检索和访问。但在处理大量高分辨率图片…