简单算法 - 交换两个整数的三种方法
2013-01-06 13:25
288 查看
如何交换两个整数是个再平常不过的问题,这里给出三种方法。第一种就是大家最熟知的使用tmp,后两种不使用第三变量。
//演示交换两个整数的三种方法
#include <iostream>
using namespace std;
int main(){
//方法一,使用第三方变量
int a = 10;
int b = 5;
cout<<"Method1:"<<endl;
cout<<"Before change: a="<<a<<" b="<<b<<endl;
int tmp = a;
a = b;
b = tmp;
cout<<"After change: a="<<a<<" b="<<b<<endl;
//方法二,使用加减法
a = 10;
b = 5;
cout<<"Method2:"<<endl;
cout<<"Before change: a="<<a<<" b="<<b<<endl;
a = a + b;
b = a - b;
a = a - b;
cout<<"After change: a="<<a<<" b="<<b<<endl;
//方法三,使用异或运算及其交换律
a = 10;
b = 5;
cout<<"Method3:"<<endl;
cout<<"Before change: a="<<a<<" b="<<b<<endl;
a = a ^ b;
b = a ^ b;
a = a ^ b;
cout<<"After change: a="<<a<<" b="<<b<<endl;
return 1;
}
//演示交换两个整数的三种方法
#include <iostream>
using namespace std;
int main(){
//方法一,使用第三方变量
int a = 10;
int b = 5;
cout<<"Method1:"<<endl;
cout<<"Before change: a="<<a<<" b="<<b<<endl;
int tmp = a;
a = b;
b = tmp;
cout<<"After change: a="<<a<<" b="<<b<<endl;
//方法二,使用加减法
a = 10;
b = 5;
cout<<"Method2:"<<endl;
cout<<"Before change: a="<<a<<" b="<<b<<endl;
a = a + b;
b = a - b;
a = a - b;
cout<<"After change: a="<<a<<" b="<<b<<endl;
//方法三,使用异或运算及其交换律
a = 10;
b = 5;
cout<<"Method3:"<<endl;
cout<<"Before change: a="<<a<<" b="<<b<<endl;
a = a ^ b;
b = a ^ b;
a = a ^ b;
cout<<"After change: a="<<a<<" b="<<b<<endl;
return 1;
}
相关文章推荐
- 交换两个整数的三种方法
- 关于交换两个整数的三种方法
- 交换两个数字,不借助于第三个变量的三种简单的方法。
- 交换两个整数数值的三种方法
- 三种交换两个整数的方法
- 两个整数的交换方法
- 不使用第三方变量交换两个变量值的三种方法
- 五种方法交换两个整数
- 三种方法实现不引入变量交换两个变量值
- 两个整数交换的3中方法
- 实现两个变量值交换的三种方法
- 1、写一个函数返回参数二进制中 1 的个数(三种方法)2、获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列3、输出一个整数的每一位。4、两个int(32位)整数m和n的二进制表达中,有多
- 零基础学C语言 笔记三 三种方法交换两个变量的值
- 请自己实现两个整数变量的交换(多种方法)
- 两个整数交换方法
- 算法学习 - 不申请第三个数交换两个整数的值
- 两个变量a,b 交换其数值的三种方法
- 交换两个变量的三种方法
- 【每天一个算法】一、交换两个整数
- 对两个整数变量的值互换的三种方法