- [toc] 树与树算法 树的概念 树 ( 英语: tree ) 是一种抽象数据类型 ( ADT ) 或是实际\作这种抽象数据类型的数据结构, 用来模拟具有树状结构性质的数据集合. 它是由 n ( n >= 1 ) 个有限节点组成一个具有层次关系的集合. 把它叫做 "树" 是因为它看起来像一颗倒挂的树, 也就是说它是根朝上, ... [toc] 树与树算法 树的概念 树 ( 英语: tree ) 是一种抽象数据类型 ( ADT ) 或是实际\作这种抽象数据类型的数据结构, 用来模拟具有树状结构性质的数据集合. 它是由 n ( n >= 1 ) 个有限节点组成一个具有层次关系的集合. 把它叫做 "树" 是因为它看起来像一颗倒挂的树, 也就是说它是根朝上, ...
- @Author:Runsen 刷Leetcode,需要知道一定的算法模板,本次先总结下二叉树的递归和非递归的遍历算法模板。 二叉树的四种遍历方式,前中后加上层序遍历。对于二叉树的前中后层序遍历,每种遍... @Author:Runsen 刷Leetcode,需要知道一定的算法模板,本次先总结下二叉树的递归和非递归的遍历算法模板。 二叉树的四种遍历方式,前中后加上层序遍历。对于二叉树的前中后层序遍历,每种遍...
- 基本概念 树,一种非线性表数据结构: 节点 “树”里面的每个元素父子关系 连线相邻节点之间的关系兄弟节点 节点的父节点是同一个节点根节点 没有父节点的节点叶(子)节点 没有子节点的节点节点的高度 节点... 基本概念 树,一种非线性表数据结构: 节点 “树”里面的每个元素父子关系 连线相邻节点之间的关系兄弟节点 节点的父节点是同一个节点根节点 没有父节点的节点叶(子)节点 没有子节点的节点节点的高度 节点...
- 前言: 作者:神的孩子在歌唱 大家好,我叫运智 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 ... 前言: 作者:神的孩子在歌唱 大家好,我叫运智 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 ...
- 树 树是一种可以递归定义的数据结构 树是由n个节点组成的集合 n=0 空树n>0 一个根节点,其他节点分为m个集合,每个集合本身又是一棵树 一些概念 根节点,叶子节点树的深度(高度)树的度孩子节点、父节点子树 二叉树 度不超过2的树(节点最多有两个叉)特殊的树满二叉树完全二叉树 二叉树的存储方式 链式存储顺序存储 父节点和左孩子节点编号关系... 树 树是一种可以递归定义的数据结构 树是由n个节点组成的集合 n=0 空树n>0 一个根节点,其他节点分为m个集合,每个集合本身又是一棵树 一些概念 根节点,叶子节点树的深度(高度)树的度孩子节点、父节点子树 二叉树 度不超过2的树(节点最多有两个叉)特殊的树满二叉树完全二叉树 二叉树的存储方式 链式存储顺序存储 父节点和左孩子节点编号关系...
- 什么是二叉树??? 二叉树是树结构的一种特殊形式。它是n个节点的集合,每个节点最多只能有两个子结点,二叉树的子树仍然是二叉树。二叉树的一个结点对应的两个子树分别称为左子树和右子树。由于子树有左右之分,因此二叉树是有序树。 二叉树还可以进一步细分为两种特殊类型。满二叉树,完全二叉树(如上图) **满二叉树:**即在二叉树中最下一层的叶节点外,每层的节点都有两个子... 什么是二叉树??? 二叉树是树结构的一种特殊形式。它是n个节点的集合,每个节点最多只能有两个子结点,二叉树的子树仍然是二叉树。二叉树的一个结点对应的两个子树分别称为左子树和右子树。由于子树有左右之分,因此二叉树是有序树。 二叉树还可以进一步细分为两种特殊类型。满二叉树,完全二叉树(如上图) **满二叉树:**即在二叉树中最下一层的叶节点外,每层的节点都有两个子...
- 题目描述 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例: 二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3], [9,20], [15,7] ] 1234567891011121314 解答 Demo ... 题目描述 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例: 二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3], [9,20], [15,7] ] 1234567891011121314 解答 Demo ...
- 目录 文章目录 目录平衡二叉树 平衡二叉树 平衡二叉查找树具有如下性质: 若左子树不空,则左子树上所有节点的值均小于它的根节点的值;若右子树不空,则右子树上所有节点的值均大于或等于它的根节点的值;每个非叶子节点的左右子树的高度之差的绝对值(平衡因子)最多为 1。 从其特性就可以看到平衡二叉查找树查找节点的时间复杂度是 O(log2n)。 目录 文章目录 目录平衡二叉树 平衡二叉树 平衡二叉查找树具有如下性质: 若左子树不空,则左子树上所有节点的值均小于它的根节点的值;若右子树不空,则右子树上所有节点的值均大于或等于它的根节点的值;每个非叶子节点的左右子树的高度之差的绝对值(平衡因子)最多为 1。 从其特性就可以看到平衡二叉查找树查找节点的时间复杂度是 O(log2n)。
- 题目描述 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回 true 。 12345678 示例 2: 给定二叉树 [1,2,2,3... 题目描述 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回 true 。 12345678 示例 2: 给定二叉树 [1,2,2,3...
- 题目描述 给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 例如: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其自底向上的层次遍历为: [ [15,7], [9,20], [3] ] 1234567891011121... 题目描述 给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 例如: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其自底向上的层次遍历为: [ [15,7], [9,20], [3] ] 1234567891011121...
- 题目描述 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 1 返回它的最大深度 3 。 解答 代码(递归) int maxDepth(TreeNode* root) { if(root==NUL... 题目描述 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 1 返回它的最大深度 3 。 解答 代码(递归) int maxDepth(TreeNode* root) { if(root==NUL...
- 目录 文章目录 目录堆堆的应用堆的基本操作往堆中插入元素删除堆顶元素 堆的排序参考文章 堆 堆可以是一个完全二叉树,这样实现的堆也被称为二叉堆。完全二叉树,它的叶子节点都在最后一层,并且这些叶子节点都是靠左排序的。 堆中节点的值都 >=(或 <=)其子节点的值,堆中如果节点的值都 >= 其子节点的值,我们把它称为大顶堆,如果都 ... 目录 文章目录 目录堆堆的应用堆的基本操作往堆中插入元素删除堆顶元素 堆的排序参考文章 堆 堆可以是一个完全二叉树,这样实现的堆也被称为二叉堆。完全二叉树,它的叶子节点都在最后一层,并且这些叶子节点都是靠左排序的。 堆中节点的值都 >=(或 <=)其子节点的值,堆中如果节点的值都 >= 其子节点的值,我们把它称为大顶堆,如果都 ...
- 题目描述 给定一个二叉树,返回它的 后序 遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] 12345678 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 解答 By 海轰 vector<int> ans; vector<int> postorderTraversal(TreeNo... 题目描述 给定一个二叉树,返回它的 后序 遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] 12345678 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 解答 By 海轰 vector<int> ans; vector<int> postorderTraversal(TreeNo...
- 题目描述 给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。 示例 1: 输入: 3 / \ 9 20 / \ 15 7 输出:[3, 14.5, 11] 解释: 第 0 层的平均值是 3 , 第1层是 14.5 , 第2层是 11 。因此返回 [3, 14.5, 11] 。 123456789 提示: 节点值的范围在32位有符号整数范围... 题目描述 给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。 示例 1: 输入: 3 / \ 9 20 / \ 15 7 输出:[3, 14.5, 11] 解释: 第 0 层的平均值是 3 , 第1层是 14.5 , 第2层是 11 。因此返回 [3, 14.5, 11] 。 123456789 提示: 节点值的范围在32位有符号整数范围...
- 题目描述 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 1234567891011121314 解答 Demo(从上到下 依次交换左右节点) TreeNode* invertTree(TreeNode* root) ... 题目描述 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 1234567891011121314 解答 Demo(从上到下 依次交换左右节点) TreeNode* invertTree(TreeNode* root) ...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签