我为我的作业编写了一个c ++程序来计算运行函数所需的时间,我需要一些耗时的函数来执行,至少需要几秒才能让计算机运行它,最好是如果它是矩阵。我试图运行的所有功能都在一秒或更短时间内运行,这令人沮丧。
它不会在屏幕上留下巨大的混乱,如1000 x 2000矩阵
我被告知,对矩阵进行平方化会花费一些时间让计算机完成,但我不知道它是真的还是它是如何完成的。
这是我目前的矩阵,它在不到一秒的时间内加载:(
#include <iostream>
#define HEIGHT 10
#define WIDTH 20
using namespace std;
void func()
{
char world[HEIGHT][WIDTH];
int i, j;
for ( i = 0; i < HEIGHT; i++ ) {
for ( j = 0; j < WIDTH; j++ ) {
world[i][j] = '.';
cout << world[i][j];
}
cout << endl;
}
}
答案 0 :(得分:6)
鉴于任何没有副作用的函数f
,您可以通过
f2
效率低100万倍
void f2() { for( long i = 1; i <= 1000000; ++i ) { f(); } }
现在,如果这还不够慢,那么哇哇!来自f3
,
void f3() { for( long i = 1; i <= 1000000; ++i ) { f2(); } }
等等。
但是如果你想真的效率非常低,那么请查看Ackermann函数。
那就是说,注意上述方法基本上等于执行你想要测量的任何东西,足够的时间。
这是标准方法。