热知识
C++中常见数据类型所占内存大小(64位操作系统):
| 数据类型 | 空间大小 |
|---|---|
| char | 1B或8b |
| int | 4B或32b |
| long long | 8B或64b |
| float | 4B或32b |
| double | 8B或64b |
计算机中常见单位的进制转换(64位操作系统):
1字节 = 8位 --> 1B = 8b (1Byte = 8bit)
1MB = 1024KB
1KB = 1024B
空间复杂度
观察下面的代码,请问它的空间复杂度是多少?
int add(int a, int b){
return a + b;
}
{{ select(1) }}
O(1)O(n)O(n^2)O(logn)
观察下面的代码,请问它的空间复杂度是多少?
int n;
cin >> n;
int a[n],b[n],c[n];
{{ select(2) }}
O(1)O(n)O(n^2)O(logn)
观察下面的代码,请问它的空间复杂度是多少?
int n,x,y,z;
cin >> n;
int a[n][n], b[n][n], c[n][n];
{{ select(3) }}
O(1)O(n)O(n^2)O(logn)
如果一道题目的空间限制为64MB,在不考虑运行程序其他所有内存开销的情况下,以下哪些数组大小是符合要求的?
{{ multiselect(4) }}
int a[114514]char a[67108864]long long a[8388609]float a[16777217]