发展历程 什么是堆? -技术百科的定义

什么是堆? -技术百科的定义

目录:

Anonim

定义-堆是什么意思?

在数据结构的上下文中,堆是一种基于树的数据结构,可满足该堆属性,在该堆结构中,为每个元素分配了一个键值或权重。 较低值的键始终具有带有较高值的​​键的父节点。 这称为最大堆结构,并且在所有节点中,根节点具有最高的密钥。


有时,基于树的结构具有相反的结构规则,其中具有较高值键的元素始终具有较低值键作为父节点。 这称为最小堆结构,并且在所有节点中,根节点的密钥最低。

技术百科解释堆

尽管每个节点通常最多有两个,但对于每个节点在堆中可以拥有的子代数没有实际限制。 堆被认为是抽象数据类型(称为优先级队列)的最有效实现。 在各种图形算法(包括Dijkstra算法)以及堆排序排序算法中,堆实现都是必不可少的。


堆具有多个差异,可以高效地用作抽象数据类型优先级队列的实现。 许多应用程序,例如图形算法,都需要实现优先级队列。


数组是堆的最常见实现形式,其中不需要指针来链接其元素之间。


堆执行多种操作,包括:

  • Find-max:在一组节点中搜索最高的关键节点
  • Find-min:在一组节点中搜索最低关键节点
  • Delete-max:删除一组节点中最高的关键节点
  • Delete-min:删除一组节点中最低的关键节点

堆还包括执行合并,插入和键更改的功能。

此定义是在数据结构的上下文中编写的
什么是堆? -技术百科的定义