空时 凌乱记
好吧,就是让我这个蒟蒻不再手动计算
程序运行时间与空间
时间
clock函数
最好用double 存
因为c++的clock函数是记毫秒的,最后最好/1000(1s=1000ms)
不过要是懒得记,CLK_TCK也是函数自带的转秒值(1000)
#include<bits/stdc++.h> int main() { int i = 10000000; double start, end; start = clock(); while( i-- ); end = clock(); printf("The time was: %lf\n", (end - start) / CLK_TCK); return 0; }
空间
sizeof
sizeof的结果等于对象或者类型所占的内存字节数
然后我们再除以bit与M之间的进率1024*1024
就ODK啦
嗯,size_of 强制转化double
//将还不如我手动快
#include<bits/stdc++.h> #define re return #define inc(i,l,r) for(int i=l;i<=r;++i) using namespace std; template<typename T>inline void rd(T&x) { char c;bool f=0; while((c=getchar())<'0'||c>'9')if(c=='-')f=1; x=c^48; while((c=getchar())>='0'&&c<='9')x=x*10+(c^48); if(f)x=-x; } int a[1500005],b[1500005]; //a表示原数,b表示包含b[i]的数 int main() { printf("The space was: %lf\n", (double)sizeof(a)/(1024*1024)); return 0; }