交换两个变量,而不引用第三个变量.
前几天,同学阿虫去面试,被人问及此问题,当时答曰不会,他也没在意.到了第二家公司竟然仍被问及此问题,依然答曰不会.回来问我,我竟然不知何解,觉得一定有好办法,只是想不出.昨晚苏州同学聚会,仍然有许多同学不知道,经过歌星解释才知的确有好办法.
如下:
其实很简单,只是没有想到而已.如果你要去面试,能否有用?
上边的方法应是swap(ref int a,ref int b),为保持原来本色,暂不改之,此句是我29号加上的.
如下:
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=a^b;
b=b^a; //b^a相当于 b^a^b 也就是 b^a^b的值就是a了, 下边相同
a=a^b;
}
上边的方法应是swap(ref int a,ref int b),为保持原来本色,暂不改之,此句是我29号加上的.
阿里云优惠券领取地址:https://partner.aliyun.com/shop/35783975 ,需要更多优惠请联系QQ和微信:891115,热线:400-968-4968