javascript:堆排序

堆排序是指利用(堆)这种数据结构所涉及的一种排序算法。堆积树是一个近似完全二叉树的结构,并同时满足堆属性:即子节点的键值总是小鱼(或者大于)他的父节点(大顶堆/小顶堆)。

算法描述:在堆积树的数据结构中堆积树中的最大值总是位于根节点(指大顶堆)。堆积树中定义一下几种操作:
(1)最大堆调整(Max_Heapify):将堆积树的末端子节点作调整,使得子节点永远小于父节点;
(2)创建最大堆(Build_Max_Heap):将堆积树所有数据重新排序;
(3)堆积排序:移除位在第一个数据的根节点,并做最大的堆积调整的递归运算


结果:
1
1
2
3
7
8
9
10
14
111
116

你可能感兴趣的:(javascript:堆排序)