【c】交换两个数字或值的各种算法实现
DATE: 2018.12.11
交换两个数字或值的各种算法实现主要有以下五种算法实现:
1、借助临时变量temp:
(1) 值传递方式:
int swap(int a, int b)
{
int temp;
temp = a;
a = b;
b = temp;
}
(2) 引用传递:
int swap(int &a , int &b)
{
int temp = a;
a = b;
b = temp;
}
(3) 指针传递:
int swap(int **a,int ** b)
{
int* temp = *a;
*a = *b;
*b = temp;
}
2、不借助临时变量实现交换:
(1) 通过加法:
int swap(int a , int b)
{
a =a + b;
b = a - b;
a = a - b;
}
(2) 通过异或:
int swap(int a, int b)
{
a = a^b;
b = b^a;
a = a^b;
}
THE END!
本文为博主原创文章,未经博主允许不得转载。若允许转载,请注明来源https://www.cnblogs.com/SoaringLee/,否则保留追究法律责任的权利!
另外,本人提供付费咨询服务并长期承接各类毕设以及外包项目。联系QQ:2963033731。加Q备注:CNBLOG外包