不使用第三个数将两个数交换的两种写法(异或、加减)
题目
现在有两个变量 a=10 b=20,请把两个数交换,且不使用第三个变量
加减法
a = a+b //a = 30
b = a-b //b=30-20=10
a = a-b //a=30-10=20
异或法
异或的基本知识: a ^ b ^ b = a 一个数异或两次另一个数还是等于自己本身
a = a^b
b = a^b //b= (a^b)^b = a
a = a^b //a= (a^b)^a = b
在开发的时候还是使用第三个变量来存储更容易懂
本文来自博客园,作者:HumorChen99,转载请注明原文链接:https://www.cnblogs.com/HumorChen/p/18039611
分类:
leetcode算法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~