首页 > 其他分享 >堆和二叉树的关系

堆和二叉树的关系

时间:2023-01-27 00:55:08浏览次数:41  
标签:关系 逻辑 const 二叉树 数组 结构

逻辑结构 VS 物理结构

  • 堆:逻辑结构是一颗二叉树(如下图)
  • 物理结构是一个数组(如下代码)

 

// 上图是一个堆(从小到大)可以用数组表示
const heap = [-1, 10, 14, 25, 33, 81, 82, 99] // 忽略下标0

// 节点关系
const parentindex = Math.floor(index / 2)
const leftIndex = 2 * i
const rightIndex = 2 * i + 1

  

标签:关系,逻辑,const,二叉树,数组,结构
From: https://www.cnblogs.com/zhenjianyu/p/17068460.html

相关文章

  • 二叉树中是否存在某值
    constbinarySearchTree=(node=tree,target=8)=>{letcurNode=nodewhile(true){if(!curNode){returnfalse}......
  • 二叉树寻找最k小值
    /***注意:left/right值若没有显示设置为null,值即为undefined*在调用二叉树前、中、后序遍历方法时,由于参数设置了默认值(tree)*所以进入了死循环*/consttree={......
  • 代码随想录算法训练营第14天 | 二叉树的递归遍历
    144.二叉树的前序遍历94.二叉树的中序遍历145.二叉树的后序遍历文章:代码随想录(programmercarl.com)视频:每次写递归都要靠直觉?这次带你学透二叉树的递归遍历!|Lee......
  • 力扣101 对称二叉树
    题目:给你一个二叉树的根节点root,检查它是否轴对称。示例:输入:root=[1,2,2,3,4,4,3]输出:true思路:  对于二叉树是否对称,要比较的是根节点的左子树与......
  • Android SDK与API版本的对应关系
    看教程、开发Android程序等很多地方,需要设置AndroidSDK的版本,而其要我们写的却是API版本的数字,为了方便查看AndroidSDK与API版本的对应关系我在SDKManager.exe中截了张......
  • 刷刷刷 Day 21 | 236. 二叉树的最近公共祖先
    236.二叉树的最近公共祖先LeetCode题目要求给定一个二叉树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个节点p、q,......
  • MySQL高级:掌握表关系及建表原则
    更多Java全套学习资源均在专栏,持续更新中↑↑戳进去领取~......
  • react,webpack,antd的版本依赖关系
    调试react导航栏的时发现,reactwebpackantd这三个基础框架之间隐含这版本兼容性关系。也就是说,这几个框架的版本必须协调适应。如果不匹配对应的版本,就会出现各种各样......
  • 刷刷刷 Day 20 | 617. 合并二叉树
    617.合并二叉树LeetCode题目要求给你两棵二叉树:root1和root2。想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两......
  • 刷刷刷 Day 20 | 654. 最大二叉树
    654.最大二叉树LeetCode题目要求给定一个不重复的整数数组 nums。 最大二叉树 可以用下面的算法从 nums递归地构建:创建一个根节点,其值为 nums中的最大值。递......