面试经典--不用中间变量交换两个整数的值
摘要:在网上搜了大概有四种办法:用下面的程序验证一下:void swap1(int &a,int &b){ a=a+b; b=a-b; a=a-b; return;}void swap2(int &a,int &b){ a=a-b; b=a+b; a=b-a;}/*swap3 很经典*/void swap3(int &a,int &b){ a^=b; b^=a; a^=b; /*等效的一句话操作是: a^=b^=a^=b; */}/*swap4 ,最精炼*/void swap4(int &a,int &b){ b=a^b^(a=b)..
阅读全文
posted @ 2013-05-19 10:09