不引入第三个变量交换两个变量的方法

这是很多公司面试或者笔试的题目,可以给大家参考下。
一般有两种方法:
1、
void swap(int a,int b) 

a
=a^b; 
b
=b^a; //b^a相当于 b^a^b 也就是 b^a^b的值就是a了, 下边相同 
a=a^b; 
}
 
也有人写成了一句,就是读起来麻烦些:)
a^=b^=a^=b;  
2、
void swap(int a,int b)
{
= a + b ;
= a - b ;
= a - b ;
}
posted @ 2006-11-12 10:16  karlchen  阅读(393)  评论(0编辑  收藏  举报