用python写堆排序
时间: 2023-04-08 21:02:36 浏览: 116
python实现堆排序的实例讲解
5星 · 资源好评率100%
可以回答这个问题。堆排序是一种高效的排序算法,它利用堆的数据结构来实现排序。在Python中,可以使用heapq模块来实现堆排序。具体实现方法可以参考以下代码:
import heapq
def heap_sort(arr):
heap = []
for i in arr:
heapq.heappush(heap, i)
sorted_arr = []
while heap:
sorted_arr.append(heapq.heappop(heap))
return sorted_arr
arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_arr = heap_sort(arr)
print(sorted_arr)
输出结果为:[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
阅读全文