在程序中实现交换两个数的功能并不复杂,但如果不使用中间变量,就需要动一下脑筋。在本文介绍了两个方法(其实原理都是一个)。其基本原理就是数的中和。 也就是说,通过某种运算(二元运算)将a和b两个数变成一个数,并保存在其中一个变量中。然后再通过同样的运算符将a或b中和掉。这样实际上是利用了a或 b本身作为了中间变量。
static class Num
{
int a;
int b;
}
public static void swap1(Num num)
{
num.a = num.a + num.b;
num.b = num.a - num.b;
num.a = num.a - num.b;
}
http://www.cnblogs.com/nokiaguy/archive/2010/07/28/1787271.html点击打开链接
本文介绍了一种不借助额外变量实现两个整数交换的方法。通过加减运算巧妙地利用其中一个变量作为临时存储,实现了数值的互换。此方法适用于需要节省内存资源的场景。
160

被折叠的 条评论
为什么被折叠?



