博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
不使用中间变量交换两个变量的值
阅读量:4697 次
发布时间:2019-06-09

本文共 349 字,大约阅读时间需要 1 分钟。

不允许任何中间变量来交换两个变量的值:例如num1=5,num2=6

    其实这一题也是很简单的:提供两种方法:

    

    1. 使用普通运算

       num1 +=num2;       //!保留2个数的和

       num2 = num1 - num2; //! num2此时的值是之前num1的值

       num1= num1 - num2; //!此时的num1是两个数之和减去之前num1值即num2值

 

   2. 使用位运算:

      num1 = num1 ^ num2;

      num2 = num1 ^ num2;
      num1 = num1 ^ num2;

 

   献给自己:告诫自己不要小看任何一题,认真思考,玄机万千

转载于:https://www.cnblogs.com/xyz123753/archive/2012/07/26/2610220.html

你可能感兴趣的文章
mysql主从延迟高的原因
查看>>
Leetcode 47. Permutations II
查看>>
DLL入门浅析【转】
查看>>
sql server:取当前时间前10分钟之内的数据 dateadd()
查看>>
python安装MySQLdb:出错Microsoft Visual C++ 9.0 is required
查看>>
BZOJ1027 [JSOI2007]合金 【计算几何 + floyd】
查看>>
【测绘图槽】03 测绘颂测绘人之歌(转载)
查看>>
LINUX下安装PHP(CGI模式)和NGINX[转]
查看>>
jQuery
查看>>
springboot定时器
查看>>
VS2017调试闪退之Chrome
查看>>
【Tip】如何让引用的dll随附的xml注释文档、pdb调试库等文件不出现在项目输出目录中...
查看>>
WPF中设置快捷键
查看>>
WebApi接口返回json,xml,text纯文本等
查看>>
C#/IOS/Android通用加密解密方法
查看>>
Web API 简单示例
查看>>
返璞归真 asp.net mvc (4) - View/ViewEngine
查看>>
ADO.Net对Oracle数据库的操作【转载】
查看>>
Contoso 大学 - 6 – 更新关联数据
查看>>
RESTful API 设计指南
查看>>