博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
不申请额外内存空间就可以完成数据互换的算法:int x=a,y=b;设计一个算法,不申请第三个变量,试把a b互换位置 (按位异或)...
阅读量:5327 次
发布时间:2019-06-14

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

经过的指点学到这个方法

1
2
3
x^=y;
y^=x;
x^=y;

^是位异或操作符,在每个位的位置,如果两个操作数对应的位只有一个(不是两个)为1,则操作结果中该位为1,否则为0。

 

另外还学到一种方法,不过遇到值为0就不行了(除数不能为0)

 

1
2
3
a=a*b;
b=a/b;
a=a/b;

相比之下还是位异或方法最好。

转载于:https://www.cnblogs.com/canxuexiecheng/articles/3218972.html

你可能感兴趣的文章
String类中的equals方法总结(转载)
查看>>
标识符
查看>>
内存地址对齐
查看>>
创新课程管理系统数据库设计心得
查看>>
Could not resolve view with name '***' in servlet with name 'dispatcher'
查看>>
[转载] redis 的两种持久化方式及原理
查看>>
MyBaits学习
查看>>
管道,数据共享,进程池
查看>>
[Cypress] Stub a Post Request for Successful Form Submission with Cypress
查看>>
SDUTOJ3754_黑白棋(纯模拟)
查看>>
php中的isset和empty的用法区别
查看>>
把word文档中的所有图片导出
查看>>
ubuntu 18.04取消自动锁屏以及设置键盘快捷锁屏
查看>>
正则表达式
查看>>
arcgis api 4.x for js 结合 Echarts4 实现散点图效果(附源码下载)
查看>>
YTU 2625: B 构造函数和析构函数
查看>>
apache自带压力测试工具ab的使用及解析
查看>>
加固linux
查看>>
WPF中Image显示本地图片
查看>>
Hyper-V虚拟机上安装一个图形界面的Linux系统
查看>>