GitHub - tsenart/kth: Go 的快速选择算法

主要观点kth提供高性能选择算法,可在不排序整个数据集的情况下找到第 k 小的元素,适用于大型数据集的 top-N 元素或中位数查找等操作。
关键信息

  • 提供多种算法,如 FloydRivest 对随机数据分布最快,PDQSelect 在所有数据模式下最稳定。
  • 速度快,比基于排序的选择算法在常见情况下提升高达 99%,且内存高效,所有操作都是原地进行。
  • 已投入生产使用,经过测试和模糊测试,适用于任何有序类型。
  • 提供三种使用算法的方式,根据数据类型不同而不同。
  • 有详细的基准测试数据,展示在不同数据分布和排序情况下的性能表现。
    重要细节
  • 安装方式为go get github.com/tsenart/kth
  • 贡献欢迎,可提交 Pull Request。
  • 项目基于 MIT 许可证,详情见LICENSE文件。
  • 基于 Go 的内部pdqsort算法构建。
阅读 12
0 条评论