欢迎光临散文网 会员登陆 & 注册

【Mindustry】七种实用排序算法代码

2023-03-06 08:04 作者:A4的钉子  | 我要投稿

该专栏共包含以下算法:

Tim Sort

Shell Sort Sedgewick Const

Quick Sort Random Pivot And Insertion Sort

Quick Sort LR Random Pivot And Insertion Sort

Comb Sort

Merge Sort

Max Heap Sort (Trifurcation)


Tim Sort


Shell Sort Sedgewick Const


Quick Sort Random Pivot And Insertion Sort


Quick Sort LR Random Pivot And Insertion Sort


Comb Sort


Merge Sort


Max Heap Sort (Trifurcation)


注1:此 TimSort 的实现并未对其归并函数添加 gallop mode。

gallop mode: 归并两个子序列时,如果连续取一子序列值次数超过阈值,将会进入gallop mode。该模式使用指数搜索到另一子序列阻塞值所在区间并在该区间使用二分查找到该值插入位置,再一次性 插入/跳过 该位置及其之前的值并将阻塞值 插入/跳过。当条件不满足时将退出该模式回到正常归并,具体详见其它语言timsort实现源码。


注2:当switch1被关闭时开始排序,排序完将switch1弹起。被排序目标为bank1。排序元素范围为 [0, cell1#0)。算法可能使用cell2或bank2做临时空间。

【Mindustry】七种实用排序算法代码的评论 (共 条)

分享到微博请遵守国家法律