E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
子树
【数据结构】二叉树
与普通树相比,二叉树具有更严格的结构限制:根节点:最顶层的节点,没有父节点叶子节点:没有子节点的末端节点
子树
:某个节点及其所有后代组成的树深度:从根节点到该节点的路径长度(根节点深度为0)高度:从节点到最深叶子节点的路径长度
nanguochenchuan
·
2025-07-03 13:14
数据结构
数据结构
算法
二叉树的深搜(不定期更新。。。。。)
有效二叉搜索树定义如下:节点的左
子树
只包含小于当前节点的数。节点的右
子树
只包含大于当前节点的数。所有左
子树
和右
子树
自身必须也是二叉搜索树。
Mr_Xuhhh
·
2025-07-03 01:38
java
android
数据结构
c++
开发语言
题解:二叉树的中序遍历(94.二叉树的中序遍历)
它按照访问左
子树
——根节点——右
子树
的顺序进行。本文将介绍三种实现二叉树中序遍历的方法:递归、迭代和Morris遍历,并详细分析每种方法的复杂度。方法一:递归思路与算法递归是最直观的中序遍历实现方式。
微白..
·
2025-07-02 11:29
算法
数据结构
leetcode
二叉树题解——二叉树的中序遍历【LeetCode】统一写法版本
94.二叉树的中序遍历一、算法逻辑(逐步通顺地讲解)这段代码的目标是实现中序遍历,即按照顺序:左
子树
→当前节点→右
子树
遍历整个二叉树,并返回节点值的列表。
·
2025-07-02 11:25
js递归树结构,返回符合条件的子集
方法一:使用递归函数返回符合条件的
子树
functionfindSubtree(tree,condition){if(condition(tree)){returntree;}if(tree.children
啃火龙果的兔子
·
2025-07-01 15:32
开发DEMO
javascript
开发语言
ecmascript
利用ShadowRoot 实现样式隔离
ShadowRootShadowDOMAPI的ShadowRoot接口是一个DOM
子树
的根节点,它与文档的主DOM树分开渲染。ShadowRoot的模式——可以是open或者closed。
Helson@lin
·
2025-07-01 01:40
javascript
chrome
devtools
ZooKeeper深度面试指南二
一、Chroot特性:多租户隔离的命名空间功能原理Chroot(ChangeRoot)是ZooKeeper3.2.0引入的关键特性,允许客户端将操作限制在指定
子树
下。
搬砖的小熊猫
·
2025-06-30 10:26
zookeeper
面试
分布式
代码随想录day15 二叉树3
优先掌握递归)404.左叶子之和(优先掌握递归)222.完全二叉树的节点个数(优先掌握递归)需要重做:全部110.平衡二叉树(优先掌握递归)思路:getHeight函数,如果不平衡,返回-1,否则返回当前左右
子树
最大值
m0_74187270
·
2025-06-27 07:20
算法
数据结构
代码随想录day15 Java版 二叉树部分
TreeNoderoot){if(root==null)return0;returncountNodes(root.left)+countNodes(root.right)+1;}}但看了题解,如果判断
子树
为满二叉树
洒水水儿
·
2025-06-27 07:48
代码随想录打卡
算法
leetcode
数据结构
二叉搜索树(C++)
[本节目标]1.二叉搜索树实现2.二叉树搜索树应用分析1.二叉搜索树1.1二叉搜索树概念二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树:若它的左
子树
不为空,则左
子树
上所有节点的值都小于根节点的值若它的右
子树
不为空
hy____123
·
2025-06-26 19:54
算法
数据结构--------------二叉树
如图树形结构中,字树不能由交集,否则就不是树形结构如图下1:
子树
是不相交的2:除了根结点,每个结点都有一个父结点3:一个N结点的树有N-1个边1.2树相关术语父节点/双亲结点:若一个结点有子结点,这个节点就称为其子结点的父结点如
qwer55588
·
2025-06-24 01:15
数据结构
力扣刷题(第二十一天)
可以使用递归或迭代方法解决:递归法(推荐):每个节点的最大深度等于其左右
子树
深度的最大值加1(当前节点自身)。递归终止条件:空节点的深度为0。
·
2025-06-23 14:59
题98. 验证二叉搜索树
假设一个二叉搜索树具有如下特征:节点的左
子树
只包含小于当前节点的数。节点的右
子树
只包含大于当前节点的数。所有左
子树
和右
子树
自身必须也是二叉搜索树。
漠宸离若
·
2025-06-23 03:42
#
LeetCode
leetcode
面试
二叉树
算法
数据结构
98. 验证二叉搜索树(二叉搜索树+判定)
思路简析:二叉查找树(BinarySearchTree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树:若它的左
子树
不空,则左
子树
上所有结点的值均小于它的根结点的值;若它的右
子树
不空
勿忘勿失
·
2025-06-23 02:41
#
数据结构
算法
c++
114. 二叉树展开为链表
示例1:解题思路:采用头插法的方式建立链表,那么建立链表的顺序依次为6-5-4-3-2-1,也就意味着我们需要以右
子树
–左
子树
–根节点的顺序遍历二叉树,遍历到一个节点就把他以头插法的方
zmuy
·
2025-06-23 02:39
LeetCode
hot100
链表
数据结构
105. 从前序与中序遍历序列构造二叉树
解题思路:前序遍历序列的第一个元素就是根节点,然后在中序遍历序列中找到根节点的位置,它的前面就是左
子树
的中序遍历,后面部分就是右
子树
的中序遍历。
·
2025-06-23 02:09
哈夫曼树Python实现
权值较小的树作为左
子树
,较大的为右
子树
(约定方向不影响结果)。生成编码:从根节点出发,向左
子树
路径标记0,向右标记1,到叶子节点的路径即为该字符的哈夫曼编码。引用pytho
张朝阳的博客
·
2025-06-21 00:20
python
python
开发语言
【补充】二叉树的遍历丨代码详解
一、3种递归遍历方法二叉树由3个基本单元组成:根结点、左
子树
和右
子树
。因此,若能依次遍历这三部分,便是遍历了整个二叉树。
熊猫_luoul
·
2025-06-19 17:35
数据结构
算法
数据结构
【Java树形菜单系统设计与实现】
递归地为当前菜单节点构建完整的
子树
结构查找特定父节点所有直接子节点判断是否有子节点简化ruoyi实现根据用户ID查询菜单树publicListselectMenuTreeByUserId(StringuseNo
软件205
·
2025-06-19 10:13
springboot
java
c++面试题(11)------输入两棵二叉树 A 和 B,判断 B 是不是 A 的子结构
你可以认为树A中只要有一棵和B结构完全相同的
子树
,就说明B是A的子结构。(约定空树不是任何树的子结构)示例:AB34/\/451/1输出:true解释:A中存在一个子结构与B完全相同。
村北头的码农
·
2025-06-18 14:29
c++
c++
开发语言
二叉树的前序遍历题解
把得到的值返回到数组里面2.那我们就要自己开辟一块空间来存放数据3.既然要开辟空间,我们就需要知道开辟空间的大小,那就需要知道树含有的节点个数,所以这里要自己写一个函数来计算树的节点个数,这个很简单,只需要分别遍历左
子树
和右
子树
积极向上的向日葵
·
2025-06-17 21:35
算法
数据结构
二叉树
Leetcode 第104题 二叉树的最大深度题解
来源:力扣(LeetCode)链接:LeetCode题目分析(1)涉及树的题,大多可以用递归解,此题也一样,由于是求树的最大深度,则可递归求左右
子树
的最大深度,然后加1即可得到树的最大
L-Windy
·
2025-06-17 20:32
算法题解
算法
二叉树
leetcode
数据结构
二叉树的最大深度题解
一个二叉树有左
子树
和右
子树
,那我们就要分别比较左右二叉树深度,题解如下:1.判断树是否为空树,空树返回02.定义左右最大深度变量,用来接收遍历的值3.分别遍历左
子树
和右
子树
,得出他们的深度4.利用三目操作符进行比较
积极向上的向日葵
·
2025-06-17 20:31
数据结构
算法
二叉树
Leetcode复盘1——树
递归解法一共分四步:框架1.terminator——下探到底该往上返回了,一般会出现在叶子节点的左右
子树
上。
薛定谔的程序喵
·
2025-06-17 03:32
Leetcode刷题之旅
Leetcode复盘
二叉树
算法
数据结构
bfs
dfs
基于二叉链表存储的二叉树的操作实现(C++)
遇到字符'#'时创建空节点,否则创建新节点,并递归创建其左
子树
和右
子树
。(2)先序遍历(Preorder):递归访问根节点,然后先序遍历左
子树
,最后先序遍历右
子树
。
·
2025-06-16 22:24
二叉树的层次遍历-C语言-数据结构
定义结构体:在二叉树的建立之上,引入了队列//定义结构体TreeNodetypedefstructTreeNode{chardata;//数据域structTreeNode*lchild;//指针域,左
子树
知月玄
·
2025-06-16 10:36
c语言
数据结构
开发语言
算法第13天|继续学习二叉树:平衡二叉树(递归)、二叉树所有路径(递归)、左叶子之和(递归)
今日总结:思考前序遍历+回溯,后序遍历的使用场景,与递归流程平衡二叉树题目链接:110.平衡二叉树-力扣(LeetCode)整体思路:平衡二叉树是指:左右两棵
子树
的高度差小于1二叉树的高度:1、树中某个节点到其最远叶节点的路径长度
·
2025-06-14 14:41
leetcode 226.翻转二叉树
思路:递归递归实现交换结点即可,在递归函数中分别递归左
子树
和右
子树
。在主函数调用的时候直接把根结点放入即可。/***Definitionforabinarytreenode.
是小Y啦
·
2025-06-14 06:28
leetcode
算法
职场和发展
二叉树
二叉查找树BST简单回顾
概念二叉查找树(BinarySearchTree),又称二叉排序树,二叉搜索树,是一种二叉树数据结构,满足以下性质:左
子树
结点值<根结点值<右
子树
结点值(左
子树
所有节点的值均小于根节点的值,右
子树
所有节点的值均大于根节点的值
一轮弯弯的明月
·
2025-06-13 21:25
数据结构与算法
数据结构
算法
Python代码极简 + 效果惊艳
importturtledeftree(branch_len,t):ifbranch_len>5:t.forward(branch_len)t.right(20);tree(branch_len-15,t)#画右
子树
秋水丶秋水
·
2025-06-11 19:26
python
开发语言
(LeetCode 动态规划(基础版))96. 不同的二叉搜索树 (递推 || 递归)
题目:96.不同的二叉搜索树思路:二叉树长度为n时,枚举每个点u作为根节点root,那么root左边的数构成左
子树
种数left,root右边的数构成右
子树
种数right,那么当前u为根节点下,二叉树的种数为
·
2025-06-10 12:19
LeetCode - 543. 二叉树的直径
关键洞察:对于树中的任意一个节点,经过该节点的最长路径长度等于其左
子树
的最大深度加上右
子树
的最大深度。递归计算:对每个节点,计算其左
GalaxyPokemon
·
2025-06-10 12:15
算法
深度优先
leetcode
二叉树 力扣hot100热门面试算法题 面试基础 核心思路 背题 将有序数组转换为二叉搜索树 二叉树的层序遍历 验证二叉搜索树 二叉搜索树中第k小的元素 二叉树的右视图 二叉树展开为链表 从前序与中序
://leetcode.cn/problems/convert-sorted-array-to-binary-search-tree/核心思路高度平衡的二叉搜索树定义为:一棵二叉树,其中每个节点的左右
子树
的高度差不超过
尘土哥
·
2025-06-10 08:54
算法
leetcode
面试
力扣刷题(第三十三天)
灵感来源-保持更新,努力学习-python脚本学习二叉树的后序遍历解题思路后序遍历是二叉树遍历的一种,顺序为:左
子树
→右
子树
→根节点。
eachin_z
·
2025-06-10 00:24
leetcode
算法
职场和发展
图论水题2
div2361D.TreeRequests题意对于一颗nnn节点的树,每个节点有一个字母,有mmm次询问,每次询问求对于顶点vvv的
子树
中深度为hhh的结点能否组成一个回文串$(1\leqn\leqm\
·
2025-06-08 12:12
数据结构-DAY06(树、哈希表、内核链表)
一、树的概念1.链表是数的一部分(斜树)2.树的查找速度很快3.层序:前序:根左右中序:左根右后序:左右根4.树的存储:顺序结构,链式结构5.特点:1,每个结点最多两个
子树
。
比奇堡在逃帅哥
·
2025-06-06 17:20
数据结构
二叉树的遍历
三种基本遍历方式(以根节点为基准)1.前序遍历(根左右)顺序:先访问根节点,再递归遍历左
子树
,最后递归遍历右
子树
。2.中序遍历(左根右)顺序:先递归遍历左
子树
,再访问根节点,最后递归遍历右
子树
。
小小桃核
·
2025-06-05 20:00
c语言
Python代码极简 + 效果惊艳
importturtledeftree(branch_len,t):ifbranch_len>5:t.forward(branch_len)t.right(20);tree(branch_len-15,t)#画右
子树
·
2025-06-05 20:07
python
力扣第101题:对称二叉树(C语言解法)
基本思路是,对于树中的任意两个节点,如果它们是镜像对称的,那么它们的值应该相等,且它们的左
子树
和右
子树
也应该分别是对称的。我们可以定义一个辅助函数isSymm
Ning_.
·
2025-06-04 18:47
LeeCode
leetcode
c语言
算法
力扣热题100 | 对称二叉树
示例1:输入:root=[1,2,2,3,4,4,3]输出:true解题思路:递归法通过递归比较左右
子树
的对称性:1.终止条件:若左右节点均为空,返回True。
小歪的博客
·
2025-06-04 18:44
leetcode
算法
力扣
【数据结构 -- 二叉搜索树(BST)】用golang实现二叉搜索树
.中序遍历中序前驱/后继结点一、概念、性质二叉搜索树(BinarySearchTree),简写BST,又称为二叉查找树它满足:空树是一颗二叉搜索树对于任意结点node,它的左右孩子如果不为空,满足:左
子树
上所有结点的值都小于
ooshTinG
·
2025-06-04 12:59
数据结构及算法
数据结构
golang
开发语言
LeetCode - 101. 对称二叉树
目录题目递归方法步骤读者可能的错误写法正确的写法题目101.对称二叉树-力扣(LeetCode)递归方法步骤创建主函数isSymmetric判断整棵树是否对称处理空树的特殊情况(空树是对称的)对于非空树,比较其左右
子树
是否互为镜像创建辅助函数
GalaxyPokemon
·
2025-06-04 05:32
算法
leetcode
职场和发展
LeetCode - 144. 二叉树的前序遍历
它的遍历顺序为:先访问根节点然后递归地前序遍历左
子树
最后递归地前序遍历右
子树
这种遍历方式也称为"深度优先遍历"(DFS)的一种形式。示例对于以下二叉树:A/\BC/\\DEF前序遍历的结
GalaxyPokemon
·
2025-06-04 05:00
leetcode
算法
职场和发展
【2024年华为OD机试】(C卷,100分)- 生成哈夫曼树 (JavaScript&Java & Python&C/C++)
当左右节点权值相同时,左
子树
高度小于等于右
子树
高度。输入描述输
qq_904477151
·
2025-06-02 19:02
算法汇集笔记总结(保姆级)
java
华为od
c语言
javascript
游戏
python
leetcode236.二叉树的最近公共祖先:递归后序遍历的祖先追踪之道
核心性质递归定义:对于当前节点root,若root是p或q,或者p和q分别在root的左右
子树
中,则root是LCA。后序遍历特性:从底向上查找,先处理子
Musennn
·
2025-06-02 18:20
leetcode刷题详解
算法
leetcode
java
数据结构
P3806 点分治1 题解+淀粉质学习笔记
对于不经过rtrtrt的路径,那它一定存在于以rtrtrt为根的某个
子树
内,那我们可以
MYJ_aiie
·
2025-06-02 10:59
题解
c++
学习
算法
经验分享
leetcode hot100刷题日记——25.翻转二叉树
classSolution{public:TreeNode*invertTree(TreeNode*root){//如果当前节点是空,返回空if(root==nullptr){returnnullptr;}//翻转左
子树
姬公子521
·
2025-06-02 10:27
力扣刷题专栏
leetcode
算法
c++
力扣热题100 - 二叉树:翻转二叉树
解题思路:思路一:深度优先搜索+递归递归结束条件:如果当前节点为空或者没有子节点(左右子节点都为空),则直接返回该节点,因为没有需要翻转的
子树
。
菲英的学习笔记
·
2025-06-02 04:13
力扣热题100
leetcode
算法
golang
c++
【算法竞赛学习笔记】树上问题基础-超有用的图论详解
子树
大小:对每一个节点的大小都等于左
子树
大小+右
子树
大小+1(自己)节点重量:删去该节点后,所有树大小的最大值。即该节点所有
子树
大小的最大值称为节
RWLinno
·
2025-06-01 22:58
ACM
图论
数据结构
图论
算法
acm竞赛
程序设计
c++
leetcode hot100刷题日记——34.将有序数组转换为二叉搜索树
二叉搜索树(BST)的性质左小右大:每个节点的左
子树
中所有节点的值都小于该节点的值,右
子树
中所有节点的值都大于该节点的值。
子树
也是BST:左
子树
和右
子树
也必须是二叉搜索树。
姬公子521
·
2025-06-01 16:16
力扣刷题专栏
leetcode
深度优先
算法
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他