全部工程
算法比较与性能测量 · Windows 版已发布

Sort Lab · 排序实验台 V3.1

看清任务状态,改写算法核心,比较每一档的真实结果。

查看最新版本Windows · 最新正式版
查看源码
技术方向
算法实验 / 运行时编译
设计主张
先看清正在做什么,再比较算法表现。
关键能力
  • 明确任务与跳过目标
  • 算法阶段状态矩阵
  • 核心源码可编辑

顶部任务区与单规模柱图同屏,当前实验信息、参与算法与各项结果状态保持可见。

同一输入上的算法实验

把核心代码编辑、实际运行和结果对照放在同一个工具中:先看算法原理,或直接改写 Sort,再用同源输入观察耗时与操作差异。

技术构成

C# / .NET 10
实现 8 种排序,并以 Array.Sort 作运行时对照。
Roslyn 5.9
编译核心模板,按行列反馈错误,不混入计时。
Windows Job / Worker
管理独立进程,可终止不响应取消的算法。
WinForms / GDI+
用横柱、双对数曲线与状态矩阵呈现实验。

设计与实现

代码页聚焦 Sort 入口与所需助手,提供应用并比较、恢复内置和只读编译包装入口。 放大查看
代码页聚焦 Sort 入口与所需助手,提供应用并比较、恢复内置和只读编译包装入口。

改写核心,结果有据可查

改动留在算法核心

模板来自真实 Sorting.cs,只露入口与必要助手;草稿和生效版分别存入本机 JSON,编译失败保留生效代码,包装可只读查看。

执行状态有明确来源

顶部状态跟随独立进程的实际执行;跳过绑定当前算法与规模,停止后保留已完成结果,不根据规模自动跳过。

增长与状态一起看

约 ×4 分档配合状态矩阵;预热后重复取中位数,计数另测,输出逐项对照 Array.Sort。

画面与演示说明

一亿项为参数上限,目前实测百万项场景。修改版计数仅覆盖 SortContext API;独立进程具有当前用户权限,不是权限沙箱。

参数上限一亿项,当前实测百万项场景。修改版只统计 SortContext API 操作,不能沿用内置复杂度或稳定性;独立进程具有当前用户权限。

快速开始

解压后离线使用

完整解压 Windows x64 ZIP,运行 Liss.SortLab.exe;运行时与编译依赖已包含,无需另装 SDK。

选择规模与算法

设置输入分布、最大规模、种子与算法,选择单规模或 3/5 档约 ×4 比较;慢任务可按明确目标跳过。

查看原理或改写

算法说明可直达代码;修改核心后按 Ctrl+Enter 应用并比较,编译错误可定位,失败保留生效版。

固定种子重跑

--stages 选择 1/3/5 档;benchmark 使用与 GUI 设置独立的固定场景导出 JSON。

powershell
.\Liss.SortLab.exe --size 4096 --stages 5 --showcase
.\Liss.SortLab.exe --benchmark --output result.json
全部工程