CSharp交换函数swap的三种实现方法
本文采用三种方式实现两个数之间的交换,分别是①借助辅助变量temp的swap函数,②采用加减法的swap函数 ,③使用异或运算的swap函数。
1.利用temp实现:
private static void TempSwap(ref int a,ref int b)
{
int c = a;
a = b;
b = c;
}
2. 采用加减法:
private static void PlusSwap(ref int a,ref int b)
{
a = a + b;
b = a - b;
a = a - b;
}
3. 采用XOR
private static void XorSwap(ref int a,ref int b)
{
a ^= b;
b ^= a;
a ^= b;
}
4. 测试
static void Main()
{
int a = 5;
int b = 6;
PlusSwap(ref a,ref b);
Console.WriteLine(a);
Console.WriteLine(b);
}