位运算两数交换

void swap(int &a, int &b)

{

  a ^= b;//a = (a^b)

  b ^= a;//b = b^(a^b)=0^a=a

  a ^= b;//a = (a^b)^a=b

}

posted on 2015-03-26 15:42  jec  阅读(226)  评论(0编辑  收藏  举报

导航