问题分析
本题考察的是分析算法性能的能力。
解答思路
初步思路:
杂技算法应当( 下面的报表将说明不是 )是时间效率最高的算法,一个元素只读取并移动了一次。
翻转算法每个元素读取并移动了两次。故时间消耗是前者的两倍。
平移算法的时间复杂度应当( 下面的报表将说明不是 )和杂技算法相同。但空间消耗最大。
运行测试
分析
由于平移算法使用了硬件/操作系统提供的缓冲机制,其效率反而是所有算法中最高的。
小结
1. 分析一个算法的效率时,能否更大程度利用系统的性能,是要考虑的一个重要因素。
2. 要想真正准确地获取到一个算法的性能信息,还得通过具体执行获取效率信息从而生成最终报表。