首页 > 解决方案 > 在交换两个数字时使用临时变量对空间复杂度有任何影响吗?

问题描述

问。1.)我正在编写一个代码来使用临时变量交换两个数字。在这种情况下,我不知道这个临时变量将如何影响空间复杂度。下面是代码。

public void swap(int a, int b){
   int temp;
   temp = a;
   a = b;
   b = temp;
}

问。2) 在一般代码实践中,使用这些额外变量(如 temp)如何影响任何函数的空间复杂度?

标签: javaspace-complexity

解决方案


一般回答:不,这既不会影响空间复杂性,也不会影响时间复杂性

空间复杂度是声明,当算法必须处理大量(收敛到无穷大)数据时,使用了多少空间。由于此临时变量仅在此方法的范围内使用,因此不会以空间复杂度的方式影响空间。

这篇文章很好的解释了这个话题=> https://www.baeldung.com/cs/space-complexity


推荐阅读