Lobsters | 📄 原文链接 | 2026-11-10 收录

比 std::sort 更快的快速排序:无分支分区、排序网络与稳健枢轴

来源:tiki.li — 2026-11-05

📋 概述

作者发布了 blqsort,一个单头文件的 C++/C 快速排序,声称在随机数据上没有已知的通用比较排序能更快,只有针对原始小类型的 SIMD 专门算法例外。三个支点:无分支分区、小分区用排序网络、更稳健的枢轴选择。基准是排序 5000 万个随机 double:M1 上 std::sort 1.33 s、ClickHouse 的 ipnsort 移植版 0.99 s、blqsort 0.67 s;Intel i5-9300H 上分别是 4.97 s、2.31 s、1.33 s。排序 5000 万个结构体时差距更大,M1 上 3.45 s 对 0.75 s。

🔑 核心要点

💡 金句

我不知道还有哪个通用的、基于比较的排序算法在随机数据上比它更快。
← 返回 Lobsters 首页