我們知道算法超時評判一般會要求運行時間小於1秒。
所以我們怎麼知道自己的算法是否超時了呢?
看個例子:
#include <iostream>
using namespace std;
int main()
{
for(int i=0;i<10000;i++)cout<<"執行次數:"<<i<<endl;
return 0;
}
我們看到for循環了10000次,執行了輸出10000次,那1秒能執行多少次這樣的語句呢?
1秒可執行語句的範圍爲106 - 108。
對應O(n)的範圍爲106 - 108;
對應O(n2)的範圍爲103 - 104;
對應O(n3)的範圍爲101 - 102。。。。。。
當我們瞭解了這些之後,就不難知道自己的算法是否會超時了。