问题:假定现在计算机比APPLE进行试验时要快1000倍。如果使用的总计算时间是一样的(大约一天),那么对于O(n*n)算法与O(nlogn)算法来说,问题规模n将增加到多少呢?
通过书本可知,在Appel进行实验时
使用时间复杂度为O(nlogn)的算法时,一天内可计算的n的规模为10000
那么在现在的计算机上进行计算,设规模为n'
则1000 * 10000log10000 = n'logn'
解得n'约为5907213
说明规模扩大了590倍左右
通过书本可知,时间复杂度为O(nlogn)的算法所用时间约为时间复杂度为O(n*n)的十二分之一
则设Appel做实验时在O(n*n)算法下一天内对应的规模为n"
则有n" * n" / 12 = 10000log10000
解得n"约为58
设现在计算机在O(n*n)算法下一天内对应的规模为n'''
则有n" * n" * 1000 = n''' *n'''
解得n'''约为1834
说明规模扩大了31倍左右