交换函数swap的三种实现方法
Posted Shihu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了交换函数swap的三种实现方法相关的知识,希望对你有一定的参考价值。
http://blog.csdn.net/GarfieldEr007/article/details/48314295
本文采用三种方式实现两个数之间的交换,分别是①借助辅助变量temp的swap函数,②采用加减法的swap函数 ,③使用异或运算的swap函数。
现在直奔主题:
1、借助辅助变量temp的swap函数
I、引用类型形参
- void swap(int &a, int &b) //引用类型方式
- {
- int temp; //辅助变量
- temp = a;
- a = b;
- b = temp;
- }
II、指针类型形参
- void swap(int *a, int *b)
- {
- int temp;
- temp = *a;
- *a = *b;
- *b = temp;
- }
2、采用加减法的swap函数
- void swap(int &a, int &b)
- {
- a = a + b;
- b = a - b;
- a = a - b;
- }
3、使用异或运算的swap函数
- void swap(int &a, int &b)
- {
- a = a ^ b;
- b = a ^ b;
- a = a ^ b;
- }
以上是关于交换函数swap的三种实现方法的主要内容,如果未能解决你的问题,请参考以下文章