二叉树
文章平均质量分 85
码农随笔
这个作者很懒,什么都没留下…
展开
-
堆排序详解
上一篇博文大概讲述了优先级队列的实现,这一篇来谈一下堆和堆排序,优先级队列参考如下博文。详解二叉堆,及优先级队列实现 上述博文中介绍了完全二叉树,满二叉树,堆及堆的存储,以及介绍了优先级队列的一些实现,这一篇博文来介绍下堆排序相关的内容。 上文中提供了一些常用的方法,如插入一个元素时,为了维持堆的特性需要执行上浮(swim)方法,以及删除一个元素时为了维持堆的性质而执行的下沉(sink)方法。以及一些如求左孩子left方法,和求右孩子right......原创 2021-10-29 13:38:05 · 186 阅读 · 0 评论 -
二叉查找树
二叉查找树是二叉树中最常用的一种类型,也叫二叉搜索树。顾名思义,二叉查找树是为了实现快速查找而生的。不过,它不仅仅支持快速查找一个数据,还支持快速插入、删除一个数据。它是怎么做到这些的呢? 这些都依赖于二叉查找树的特殊结构。二叉查找树要求,在树中的任意一个节点,其左子树中的每个节点的值,都要小于这个节点的值,而右子树节点的值都大于这个节点的值。 ...原创 2021-10-25 18:01:53 · 7381 阅读 · 0 评论 -
详解二叉堆,及优先级队列实现
首先介绍下满二叉树和完全二叉树 一、满二叉树,非叶子节点的度为2(有两个子节点),叶子节点全部处于同一层上 满二叉树 满二叉树除了满足普通二叉树的性质,还具有以下性质: 1、满二叉树中第 i 层的节点数为 个。 2、深度为 k 的满二叉树必有 个节点 ,叶子数为 。 3、满二叉树中不存在度为 1 的节点,每一个分支点中都两棵深度相同的子树,且叶...原创 2021-10-09 18:07:32 · 340 阅读 · 0 评论 -
Leetcode相同的树
给两棵二叉树的根节点p和q,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 如下面的两颗二叉树:结构相同,而且对应节点的值是相同的 如下面的二叉树,结构不同,所以不能算为是相同的二叉树 再比如下面的二叉树,虽然结构相等,但是值不相等,也不能算为相同的二叉树 详细题解 一、基于递归的解决方法 递归函数 public boolean isSameTree(TreeNode p, TreeNode q) { } 终...原创 2021-09-02 10:57:02 · 170 阅读 · 0 评论