两个变量交换值,不使用缓存的方法
2011-03-03 20:43
253 查看
第一种方法,大家会借助第三个变量来实现:
如:C=A;A=B;B=C;
这种方法需要借助第三变量来实现;
第二种方法是利用加减法实现两个变量的交换,
如:A=A+B;B=A-B;A=A-B;
第三种方法是得用位异或运算来实现,也是效率最高的一种,在大量数据交换的时候,效率明显优于前两种方法,
如:A=A^B;B=A^B;A=A^B;
原理:利用一个数异或本身等于0和异或运算符合交换率。
如:C=A;A=B;B=C;
这种方法需要借助第三变量来实现;
第二种方法是利用加减法实现两个变量的交换,
如:A=A+B;B=A-B;A=A-B;
第三种方法是得用位异或运算来实现,也是效率最高的一种,在大量数据交换的时候,效率明显优于前两种方法,
如:A=A^B;B=A^B;A=A^B;
原理:利用一个数异或本身等于0和异或运算符合交换率。
相关文章推荐
- 一种不使用中间变量交换两个变量的方法
- 交换两个变量的值,不使用第三个变量的四种法方法
- 交换两个变量的值,不使用中间变量的四种法方法
- 使用异或运算实现中两个变量互换的方法
- 让人泪奔的方法:两个变量在不使用其他变量的情况下进行数据交换
- 交换两个变量的值,不使用第三个变量的四种方法
- JavaScript两个变量交换值(不使用临时变量)
- 设计算法并写出代码移除字符串中重复的字符,不能使用额外的缓存空间。注意: 可以使用额外的一个或两个变量,但不允许额外再开一个数组拷贝。
- C语言基础:两个变量交换值的方法
- 让人泪奔的方法:两个变量在不使用其他变量的情况下进行数据交换
- 交换两个变量的值,不使用第三个变量的四种方法
- 交换两个变量的值,不使用第三个变量(两种方法)
- JavaScript两个变量交换值的实现方法
- 交换两个变量的值,不使用第三个变量的四种法方法
- 交换两个变量的值,不使用第三个变量的方法
- 交换两个变量的值,不使用第三个变量的四种方法
- 两个变量交换值 优化方法
- 两个变量交换值的方法 按位异或 快速交换两个变量。
- 交换两个变量的值,不使用第三个变量的四种方法
- 【java基础】两个变量互换不使用第三方变量的方法