请介绍一下你知道的排序算法有哪些

简介: 排序算法分为比较类与非比较类。比较类如快排、归并、堆排平均时间复杂度为O(n log n),插入排序为O(n²),但小规模或高有序数据下插入排序更优;实际应用常混合多种算法,如Java的排序实现。非比较类如计数、桶、基数排序可达O(n),依赖数据特性。

排序算法大致可分为两类:

  • A. 基于比较的排序算法
  • B. 非比较排序算法

比较排序算法有:快排、归并、堆排序、插入排序等

非比较排序算法有:计数排序、桶排序、基数排序等

比较排序算法中

  • 快排、归并、堆排序能够达到 $$O(n \cdot \log{n})$$的(平均)时间复杂度
  • 而插入排序的(平均)时间复杂度是 $$O(n^2$$
  • 但并不是说复杂度高的算法就差,这要看数据规模和数据有序度,例如
  • 数据量小,或是有序度高的数据就适合用插入排序
  • 同样是数据量大的数据排序,如果数据的有序度高,归并优于快排
  • 快排虽然是比较排序中最快的算法,但若是分区选取不好,反而会让排序效率降低
  • 工业级的排序都是混合多种排序算法,例如 java 排序的实现就是混合了插入、归并与快排,不同的数据规模、不同场景下切换不同的排序算法

至于计数、桶、基数可以达到进一步让时间复杂度降至$$O(n$$,当然这与被排序数字的位数、范围等都有关系,您想知道的话,咱们可以细聊。

相关文章
|
8月前
|
芯片
3.7V升压至5V/2A解决方案,PW5100、PW5300A与PW6276芯片选型与设计指南
3.7V升压至5V/2A解决方案,PW5100、PW5300A与PW6276芯片选型与设计指南
|
8月前
|
安全 算法 网络协议
从明文到加密:HTTP与HTTPS核心知识全解析
本文深入解析HTTP与HTTPS的核心差异,揭示HTTPS如何通过SSL/TLS协议、CA证书和混合加密机制,解决HTTP的窃听、篡改与冒充三大安全问题,全面科普网络安全关键技术。
2794 6
|
8月前
|
传感器 安全 前端开发
USB专用过压保护ic芯片选型指南
平芯微电子推出高性能过压过流保护芯片系列,涵盖OVP/OCP双重防护、超低内阻、宽压可调等创新技术,提供从消费电子到车载系统的全场景电源保护方案,助力提升产品可靠性与竞争力。
|
8月前
|
Java Go 开发者
IDEA开发常用的快捷键
IntelliJ IDEA常用快捷键汇总:涵盖代码生成(如main、sout)、编辑(复制、删除、重命名)、导航(跳转、查找)、格式化、代码阅读及版本控制等高频操作,提升开发效率。熟练掌握可显著优化编码体验,是Java开发者必备技能。
803 1
|
8月前
|
安全 前端开发 芯片
OVP过压保护芯片,纳秒反应时间,关断输入和输出通路
OVP过压保护芯片,纳秒反应时间,关断输入和输出通路
|
8月前
|
人工智能 监控 安全
每天150亿次攻击!钓鱼已“溢出”邮箱,全面攻陷你的工作聊天窗口
网络钓鱼已从“垃圾邮件”升级为全渠道攻击,借助AI伪造身份与话术,渗透微信、钉钉、Slack等协作工具。每天150亿次攻击背后,是信任机制的被滥用。企业需构建跨平台行为分析与多重验证机制,重塑安全防线。
291 2
|
8月前
|
存储 人工智能
什么是QR二维码 ?
QR码是由Denso Wave于1994年发明的二维条码,具高容量、强纠错、易识别等特点,广泛应用于移动支付、票务、物流、数字护照等领域。其结构包含定位、对齐、时序图案及数据区,支持数字、字母、字节、汉字等编码模式,结合智能手机发展,已成为数字化生活的重要工具。
3084 6
|
8月前
|
安全 网络协议 物联网
低耗能蓝牙信标:关键技术演变和部署深度选型指南详解
蓝牙信标技术从BLE诞生到5.1厘米级定位,历经低功耗、抗干扰、Mesh组网至高精度演进。本文梳理其关键技术发展,并针对不同场景提供部署选型指南,助力工业安全、智慧城市等领域的精准定位应用。如果您想进一步了解蓝牙定位技术和案例,欢迎搜索维构lbs智能定位~
|
8月前
|
安全 前端开发 芯片
USB过压保护芯片,切断输入和输出,防护后端电路,带自恢复
USB过压保护芯片,切断输入和输出,防护后端电路,带自恢复
|
9月前
|
运维 供应链 编译器
国产芯片生态:从设计到量产,到底难在哪?
国产芯片生态:从设计到量产,到底难在哪?
528 7

热门文章

最新文章