问题描述
|
与标题相同的问题。这不是我遇到的任何实际问题,我只是对此感到好奇。
解决方法
该页面对外壳排序进行动画处理。该代码可用,应该给出有关如何衡量进度的想法。
, 由于shell排序具有特定的间隙序列(甚至是最佳的间隙序列),因此您的进度可以大致由当前使用的间隙来表示。当您完成最后的插入排序时,您几乎完成了工作,因为这将在非常线性的时间内达到输入的大小。
, 间隙排序中的比较次数是固定的,可以根据增量顺序和输入长度来计算。因此,输入中的当前间隙和位置可用于报告相当准确和线性的进度。