网站建设总结建设官方网站

珠海市新黄金城科技有限公司 2026/09/09 17:41:44

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、堆排序定义
  • 二、时间复杂度
  • 三、实现思路
    • a.注意(升/降)
  • 四、topk问题

前言

常见的基本排序算法有冒泡、选择、插入,但效率太低。
堆排序和快速排序算法则是相对高效的算法。这篇主要先介绍堆排序


一、堆排序定义

堆排序就是借助(大/小)堆的特性,实现的快速排序

二、时间复杂度

时间复杂度:N * log2
本质就是建堆后,借助堆来调整N个数的位置,每次调整时间为堆高度log2

三、实现思路

(以小堆为例)

  1. 先将数据建小堆,此时堆顶是最小值。
  2. 将堆顶元素与数组末尾的元素交换,此时最小值被放到数组末尾。
  3. 将堆的有效长度-1,末尾元素视为已排序,不参与后续调整。
  4. 对堆顶的元素进行向下调整,使其重新满足小堆的特性
  5. 重复上述过程,直到堆的有效长度为1
//实现堆排序————时间复杂度:N * logN (一次向下调整是N, 执行N次)voidHeapSort(int*a,intn){//1、建堆for(inti=(n-1-1)/2;i>=0;i--)//需要从最后一个节点的父亲节点,开始向下调整{AdjustDown(a,n,i);}//2、将排序好的最小值,排出堆排序的范围intend=n-1;//3、再一直对根节点实现向下调整while(end>0){swap(&a[0],&a[end]);//再次选择最小的值AdjustDown(a,end,0);end--;}}

至此,实现了数组的降序排列

a.注意(升/降)

排升序,建大堆
排降序,建小堆

因为每次堆顶会和数组末尾的元素交换


四、topk问题

N个数中找出最大或最小的前K个数?

最优方案:建立一个K的数的堆。
如果想找K个最大数就建小堆,想找K个最小数就建大堆
(以小堆为例)

遍历N-K个数,凡是比堆顶大的数就替换堆顶数据,进堆向下调整。
(因为堆顶的数总是较小的)最后剩下的k个数就是前K个最大的数。

前K个最小的数同理可得。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

网站建设全包滨州网站建设

Java小白求职面试:从Spring Boot到微服务架构的技术探讨面试场景在一家知名互联网大厂的会议室里,严肃的面试官正在面试一位名叫“超好吃”的Java小白求职者。场景

2026/06/30 13:57:38

龙岗网站建设广州市网站建设

第一章:C# 12顶级语句的革命性演进C# 12 对顶级语句(Top-Level Statements)进行了重大优化,使其更简洁、高效

2026/06/30 10:46:21

网站建设推广荆门网站建设

目录摘要开发技术核心代码参考示例1.建立用户稀疏矩阵,用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度总结源码文档获取/同行可拿货,招校园代理 :文章底部

2026/06/30 11:52:58

塘沽网站建设太原网站建设

SacreBLEU终极指南:5分钟掌握机器翻译评估标准【免费下载链接】sacrebleuReference BLEU implementation that auto-downloads

2026/06/30 11:41:26

网站建设协议网站建设的论文

Windows 10 OneDrive彻底卸载终极指南:简单三步释放系统空间【免费下载链接】OneDrive-UninstallerBatch script to completely

2026/06/30 13:07:04

万州网站建设诸城网站建设

在军事与网络安全领域,“最强矛与盾”的较量是永恒的主题。这不仅是技术对抗,更关乎战略思维与资源分配的深刻抉择。追求“最强”本身,往往意味着成本失控和实战效能的

2026/06/30 10:18:19

电子商务网站建设广州建设网站

📚 第二篇:主流商业引擎在座舱中的应用与实践第 4 章:Kanzi:专业 HMI 引擎的效率与实时性优势如果说 Unity 和 Unreal

2026/06/30 11:01:53

营销网站建设湖州网站建设

“您好,请问有什么可以帮您?”这句话我每天要重复上百次。作为售后客服,我的工作就是解决客户的各种问题——产品怎么用、订单怎么查、售后怎么申请。听起来很简单&#

2026/06/30 10:56:22

云南网站建设南充网站建设

Beyond Compare 5密钥生成技术深度解析:从原理到实践【免费下载链接】BCompare_KeygenKeygen for BCompare 5项目地址: https://gi

2026/06/30 13:20:35

房产网站建设住房城乡建设部网站

💡实话实说:CSDN上做毕设辅导的都是专业技术服务,大家都要生活,这个很正常。我和其他人不同的是,我有自己的项目库存࿰

2026/06/30 10:39:51