空间复杂度

· · 个人记录

字节计算器

1. 512M

512 M = 536870912 B
1 int = 4B
1 bool = 1 char = 1 B

也就是说,如果有512M的内存可以用,大概可以开1e8左右的int,准确点就是13e7。 bool 能开5e8,53e7,char也一样。 long long大概能开6e7左右。 512M 与 500M 基本没区别。 #### 2. 256M 256 M = 268435456 B 1 int = 4 B 1 bool = 1 char = 1 B $\therefore$256M = 67108864 int = 268435456 bool = 268435456 char 也就是说,如果有256M的内存可以用,大概可以开6e7左右的int。 bool 能开2e8,具体来说是26e7,char一样 long long大概能开3e7左右。 #### 3. 128M 128 M = 134217728 B 1 int = 4 B 1 bool = 1 char = 1 B $\therefore$128M = 33554432 int = 134217728 bool = 134217728 char 也就是说,如果有128M的内存可以用,大概可以开3e7左右的int。 bool 能开 1e8 ,具体是13e7,char 一样 long long 大概开1e7,准确点说是15e6。 125M 与 128M 基本没区别。 #### 4. 1G 1 G = 1073741824 B 1 int = 4 B 1 bool = 1 char = 1 B $\therefore$1 G = 268435456 int = 1073741824 bool = 1073741824 char 也就是说,如果有1G的内存可以用,大概可以开2e8左右的int,准确点就是26e7。 bool 能开1e9,char也是。 long long 能开13e7。大概1e8。 大概也就这么几种内存的情况吧……