首页
移动开发
物联网
服务端
编程语言
企业开发
数据库
业界资讯
其他
搜索
100种算法【Python版】第47篇——堆排序
编程语言
2024-11-06 18:22:39
阅读次数: 0
本文目录
1 算法步骤
2 算法示例
3 python代码
3.1 代码说明
3.2 复杂度分析
堆排序(Heap Sort)是一种基于堆数据结构的排序算法。堆是一棵完全二叉树,并且有两种类型:
最大堆(Max Heap):每个节点的值都大于或等于其子节点的值。
最小堆(Min Heap):每个节点的值都小于或等于其子节点的值。
堆排序的核心思想是使用最大堆来实现升序排序,或使用最小堆来实现降序排序。堆排序的时间复杂度为
O ( n l o g n ) O(nlogn)
猜你喜欢
转载自
blog.csdn.net/qq_32882309/article/details/143510329
100种算法【Python版】第47篇——堆排序
100种算法【Python版】第46篇——快速排序
100种算法【Python版】第49篇——桶排序
100种算法【Python版】第48篇——计数排序
100种算法【Python版】第51篇——希尔排序
100种算法【Python版】第45篇——归并排序
100种算法【Python版】第34篇——SPFA算法
100种算法【Python版】第22篇——Dijkstra算法
100种算法【Python版】第30篇——IDA*算法
100种算法【Python版】第21篇——Wilson算法
100种算法【Python版】第18篇——Prim算法
100种算法【Python版】第23篇——A*算法
100种算法【Python版】第38篇—— Tarjan算法
100种算法【Python版】第15篇——KMP算法
100种算法【Python版】第26篇——Johnson算法
100种算法【Python版】第42篇——Quickhull算法
100种算法【Python版】第40篇——卡恩算法
100种算法【Python版】第35篇——PageRank算法
100种算法【Python版】第50篇——Tim Sort
100种算法【Python版】第43篇——优化算法之模拟退火算法
100种算法【Python版】第19篇——Kruskal’s 算法
100种算法【Python版】第33篇——Tonelli-Shanks算法
100种算法【Python版】第24篇——Bellman-Ford算法
100种算法【Python版】第53篇——无损压缩之LZW算法
100种算法【Python版】第54篇——无损压缩之DEFLATE算法
100种算法【Python版】第37篇—— Jarvis March算法
100种算法【Python版】第36篇——Graham Scan算法
100种算法【Python版】第39篇——Boyer-Moore算法
100种算法【Python版】第31篇——蒙特卡罗算法
100种算法【Python版】第28篇——扩展欧几里得算法
今日推荐
周排行
jasperreport 开发问题总结
eclipse最最最常用的快捷键
2.Kotlin-扩展函数
PHP中创建和编辑Excel表格的方法
远程办公的复盘 未完待续
mac与windows共享键盘鼠标(synergy)
DOCKER使用 FLANNEL(ETCD+FLANNEL)网络
剑指offer:(二)替换空格
javaScript之Location,Navigator,History
Python 模块的加载顺序
每日归档
更多
2025-03-14(0)
2025-03-13(0)
2025-03-12(0)
2025-03-11(0)
2025-03-10(0)
2025-03-09(0)
2025-03-08(0)
2025-03-07(0)
2025-03-06(0)
2025-03-05(0)