Java版八大排序之堆排序

堆排序:是指利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。 每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆; 每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。 时间复杂度:O (nlgn) 堆排序的工作原理: 假设序列有n个元素,先将这n建成大顶堆 然后取堆顶元素,与序列第n个元素交换
相关文章
相关标签/搜索