首页 » 算法技术手册 » 算法技术手册全文在线阅读

《算法技术手册》报告

关灯直达底部

审视在相同的平台上(这里是Linux 2.6.9-67.0.1.ELsmp i686,机器是高端计算机和桌面PC)的实际结果是非常有帮助的。我们列出3个表(表A-3、表A-5、表A-6),分别是Java、C和Scheme的结果。在每张表中,时间的单位都是毫秒,并且给Java的结果描绘一张直方图。

表A-3的行为概况请见表A-4的直方图。我们忽略那些0值的表行。所有非零值都用阴影表示。

为了解释这些结果,我们使用统计的方法。如果假设每次实验的计时都是独立的,那么我们将会使用之前的置信区间。如果有人希望我们预测一下n=4 000 000时算法的性能,我们可以说期望时间在[32.9499,34.6215]之间的几率是95.45%。

C实现的速度比Java实现快3倍左右。但是这个直方图不能提供足够的信息,因为C的计时精确到了毫秒级,而Java的计时却只是秒级。

最后一张表是Scheme的结果。其结果的变化程度比Java和C更高。一个可能的原因是递归解需要更多的簿记计算。