空间复杂度
空间复杂度是什么?
就是算法消耗的最大数据空间。也可以理解为数据定义的次数、个数。也可理解为程序从开始到结束一共要消占用的空间。
空间复杂度的实例:
1.O(1),也就是说随着n的增大,并没有新定义,并没有新的数据:
int sum = 0;
for(int i=0; i<n; i++){
sum += i;
}
2.O(n),随着n的增大会有新数据申请新空间。
for(int i=0; i<n; i++){
int j = i;
}
3.O(n²),开二维数组:默认MAX为宏定义变量
int a[MAX][MAX];
考虑到时间往往都够用,常常采用牺牲空间救时间的策略。
时间复杂度:🔗链接
《羊卓的杨的算法笔记》:🔗链接
哔哩哔哩/bilibili:🔗羊卓的杨