提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
空间复杂度分析
计算机的软硬件都经历了一个比较漫长的演变史,作为为运算提供环境的内存,更是如此,从早些时候的512k经历了1M,2M,4M等,发展到现在的8,甚至16G和32G,用算法的空间复杂度来描述算法对内存的占用。
Java中常见的内存占用
1.基本数据类型占用
byte----->1字节
short---->2字节
int------>4字节
long----->8字节
char----->2字节
float---->4字节
double—>8字节
boolen—>1bit
2.计算机访问方式
计算机访问方式都是一次一个字节
3.引用数据类型机器地址
一个引用的机器地址需要8个字节表示
例如 Date date = new Date();
4.自创引用类型
创建一个对象,除了Date对象内部存储的数据占用的内存,该对象本身也有内存开销,每个对象的内存开销是16字节,用来保存对象的头信息。
5.一般内存使用
如果不够8个字节,都会被自动填充为8字