C语言swap(a,b)值交换的有以下4种实现方法。
(普通方法):
void swap(int &a, int &b)
{
int tmp = 0;
tmp = b;
b = a;
a = tmp;
}
(数学方法):
void swap(int &a, int &b)
{
a = a + b;
b = a - b;
a = a - b;
}
(汇编方法):
<pre name="code" class="cpp">void swap(int &a, int &b)
{
<span style="font-family: Tahoma, Helvetica, Arial, 宋体, sans-serif; font-size: 14px; line-height: 25.2000007629395px; background-color: rgb(221, 237, 251);">a ^= b ^= a ^= b;</span>
}
(终极方法):
void swap(int &a, int &b)
{
a = a+b-(b=a);
}
转载自:
原文章地址