数据结构---堆

1.堆的概念及结构

堆的性质:  
  • 堆中某个节点的值总是不大于或不小于其父节点的值
  • 堆总是一棵完全二叉树
数据结构---堆_第1张图片

2.举例说明

堆一般是把数组数据看做是一棵完全二叉树

  • 小堆要求:任意一个父亲<=孩子
  • 大堆要求:任意一个父亲>=孩子 

比如:

数据结构---堆_第2张图片

我们分别分析一下:这个题选A

数据结构---堆_第3张图片

3.堆(数据结构)与堆(内存)的区别

我们数据结构中学的堆和C语言操作系统中学的堆不是一个东西,他们只是名字相同而已

  • 数据结构的堆是一棵特殊的完全二叉树
  • 操作系统的堆是一个内存区域的划分

4.堆的意义 

  • 堆排序  O(N*logN)
  • top k问题Top K算法分析_基于向量交集的topk搜索-CSDN博客
  • ...... 

你可能感兴趣的:(#,数据结构,数据结构,java,算法)