最优的空间复杂度就是开始元素顺序已经排好了,则空间复杂度为:0;
最差的空间复杂度就是开始元素逆序排序了,则空间复杂度为:O(n);
平均的空间复杂度为:O(1);
如上所述,最小0,最大O(n),所以平均不应该还是O(n)吗?不应该还是同数据量n成正比关系,而不是一个常量吧?
冒泡的空间是在原数组上进行的,最多就需要几个中间变量用于交换和记录,所以空间复杂度应该就是常数级
他这个最差是O(n)不太清楚是怎么算的emm
我来说吧,空间复杂度就是你完成算法需要的额外的空间,不包括数组本身就要空间
就拿你的冒泡排序,数组本身需要空间,但这个空间不算空间复杂度,你要完成排序算法把这个数组排序额外需要的空间就是空间复杂度
在冒泡算法中只需要一个额外交换变量就可以,所以空间复杂度是O(1),采纳吧
冒泡排序没有增加新的存储空间,n只是原始数组的大小,并不是冒泡排序过程中产生的空间需求