python 诠释 堆排序

最近在使用java 的PriorityBlockingQueue 发现其排序使用的是堆排序 ,于是借这个周末翻了一下大学时候的数据结构的书好好复习了下,堆排序是一种选择排序,堆的定义: n各元素的序列{k1, k2, k3, ……kn},当且仅当满足ki <= k2i  &&   ki <= k2i + 1(小顶堆) 或者 ki >= k2i && ki >= k2i+1(大顶堆) 的关系时,称之
相关文章
相关标签/搜索