【Mindustry】七种实用排序算法代码
该专栏共包含以下算法:
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做临时空间。