首页 > 编程语言 > 详细

算法-不使用中间变量交换两个数

时间:2015-06-05 13:38:34      阅读:210      评论:0      收藏:0      [点我收藏+]

这个应该是烂大街的一个题目了,闲来无事,随便写写,常用的有三种方法,加减法,乘除法,异或法:

1.加减法,这个是最容易的想到的,不过需要注意的,如果在处理浮点型数字的时候可能会精度丢失:

    a=a+b;
    b=a-b;
    a=a-b;

2.乘除法,和加减法类似,也会有精度丢失,不过出现的一个问题是除数不能为0:

    a=a*b;
    b=a/b;
    a=a/b;

3.异或法,这个需要记住的一点就是变量a异或b的异或值异或b等于a:

    a=a^b;
    b=a^b;
    a=a^b;

算法-不使用中间变量交换两个数

原文:http://www.cnblogs.com/xiaofeixiang/p/4554340.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!