码迷,mamicode.com
首页 >  
搜索关键字:满二叉树 完全二叉树    ( 1098个结果
【数据结构】树与二叉树
树是一类重要的非线性数据结构,是以分支关系定义的层次结构 定义: 树(tree)是n(n>0)个结点的有限集T,其中: 有且仅有一个特定的结点,称为树的根(root) 当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1,T2,……Tm,其中每一个集合本身又是一棵树,称为根的子树(subtr ...
分类:其他好文   时间:2017-04-08 22:14:46    阅读次数:170
Python -堆的实现
最小(大)堆是按完全二叉树的排序顺序的方式排布堆中元素的,并且满足:ai >a(2i+1) and ai>a(2i+2)( ai <a(2i+1) and ai<a(2i+2)).堆是一种高级的数据结构,在Python中,有相应的模块deapq。 下面给出自己编写的代码实现最小堆与使用heapq模块 ...
分类:编程语言   时间:2017-04-04 16:39:32    阅读次数:221
二叉树性质
?【性质1】在二叉树的第i层上最多有2i-1个结点(i>=1)。 【性质2】深度为k的二叉树至多有2k –1个结点(k>=1)。 ?【特别】一棵深度为k且有2k–1个结点的二叉树称为满二叉树。如下图A为深度为4的满二叉树,这种树的特点是每层上的结点数都是最大结点数。 可以对满二叉树的结点进行连续编号 ...
分类:其他好文   时间:2017-03-30 20:41:49    阅读次数:115
堆与堆排序
堆与堆排序 一、什么是堆 堆其实是一颗完全二叉树,除了树的最后一层不是满的,其他层从左到右都是满的。堆中除叶子节点外每个节点的关键字都大于等于(或小于等于)他的左右孩子的关键字,其中节点的关键字都大于等于左右孩子的关键字的堆称之为“大顶堆”或“最大化堆”,如下图a;节点的关键字都小于等于左右孩子的关 ...
分类:编程语言   时间:2017-03-30 17:16:15    阅读次数:255
从零开始: 二叉查找
1、二叉树 二叉树(Binary Tree)的特点是每个结点至多具有两棵子树(即在二叉树中不存在度大于2的结点),并且子树之间有左右之分。 二叉树的性质: (1)、在二叉树的第i层上至多有2i-1个结点(i≥1)。 (2)、深度为k的二叉树至多有2k-1个结点(k≥1)。 (3)、对任何一棵二叉树, ...
分类:其他好文   时间:2017-03-28 16:23:52    阅读次数:172
【LeetCode】222. Count Complete Tree Nodes-完全二叉树的结点个数
一、描述: 二、思路: 完全二叉树; 对于整棵二叉树,从根结点出发,一直沿左下方向遍历树的深度是l,一直沿右下方向遍历的深度是r;则有两种情况: 1、l == r,左右深度相等,一定是完全二叉树,即满二叉树,结点个数为(2^l-1)或(2^r-1); 2、l != r,只有一种情况:在二叉树的倒数第 ...
分类:其他好文   时间:2017-03-27 15:35:48    阅读次数:176
索引优先队列的工作原理与简易实现
欢迎探讨,如有错误敬请指正 如需转载,请注明出处 http://www.cnblogs.com/nullzx/ 1. 优先队列与索引优先队列 优先队列的原理大家应该比较熟悉,本质上就是利用完全二叉树的结构实现以log2n的时间复杂度删除队列中的最小对象(这里以小堆顶为例)。完全二叉树又可以通过数组下 ...
分类:其他好文   时间:2017-03-27 00:46:11    阅读次数:293
c++实现二叉树笔记(模板实现)(三)
学习了树的知识,简单的做了记录,只是基本的罗列和实现。 二叉树是树的一种特殊形式,每个节点都有左右两棵子树。有关基本的概念:度,高度(深度),还有满二叉树(特殊的完全二叉树),完全二叉树。 1.对于二叉树的数据存储结构:有顺序存储和链式存储。 顺序存储更适合完全二叉树,否则浪费存储空间。所以链式存储 ...
分类:编程语言   时间:2017-03-26 17:10:14    阅读次数:214
二叉树进阶之满二叉树和完全二叉树
转载请注明原文地址: 一:满二叉树 除了叶子结点无任何子节点外,每一层的结点都有两个子节点。也就是说:一棵满二叉树是一个完整的三角形 △ 结构。 满二叉树的性质:若满二叉树的层数为L,结点数为N,则: N=2^L-1。(结点数为 2的层数次方 减一) 二:完全二叉树 完全二叉树:1:一棵树,除了叶子 ...
分类:其他好文   时间:2017-03-24 15:30:45    阅读次数:169
排序算法<No.5>【堆排序】
算法,是系统软件开发,甚至是搞软件的技术人士的核心竞争力,这一点,我坚信不疑。践行算法实践,已经有一段时间没有practise了,今天来一个相对麻烦点的,堆排序。 1. 什么是堆(Heap) 这里说的堆,是一种数据结构,不是指计算机系统中的存储类型。堆是一种完全二叉树。说到完全二叉树,估计很多人都会 ...
分类:编程语言   时间:2017-03-23 12:43:13    阅读次数:274
1098条   上一页 1 ... 54 55 56 57 58 ... 110 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!