对于交换函数,在这里我有三种方法分享给大家。
首先第一种为变量法,利用中间变量对两个函数进行交换。首先定义一个变量值tmp(在这里可以以任意名称字母赋值),对于两个变量,例如a和b。先把a的值赋值给tmp,现在a就没有值。然后把b的值赋值给a,此时a为开始时b的值。最后利用中间变量tmp把原本a的值赋值给b从而实现 a与b之间值的交换。代码如下:
第二种则为异或法。将a和b的值先转化为二进制数,在进行三次异或。异或的方法是例如:1的二进制为0001,2为0010.两数上下对齐相同的数字为0,不同的为1。则1和2的异或值为0011。
如上进行三次a与b的异或可实现两数交换。
第三种则利用数学原理进行a和b的重复加减。
以上就是三种实现交换的方法。