关于交换的三种方法
2014-04-18 13:29
99 查看
a,b交换
方法一:
int a=10;
int b=5;
int temp;
temp =a;
a=b;
b=temp;
方法二:
int a = 1; //0001
int b = 2; //0010
a = a+b;
b=a-b;
a=a-b;
方法三:
int a = 1; //0001
int b = 2; //0010//
a = a^b; //0011
b=a^b; //0001
a=a^b; //0010
方法四:调用
public static void Main(string[] args)
{
swap( ref a, ref b);
Console.WriteLine("a:"+a+" b:"+b);
Console.ReadKey();
}
public static void swap(ref int a,ref int b)
{
a = a^b; //0011
b=a^b; //0001
a=a^b; //0010
}
方法一:
int a=10;
int b=5;
int temp;
temp =a;
a=b;
b=temp;
方法二:
int a = 1; //0001
int b = 2; //0010
a = a+b;
b=a-b;
a=a-b;
方法三:
int a = 1; //0001
int b = 2; //0010//
a = a^b; //0011
b=a^b; //0001
a=a^b; //0010
方法四:调用
public static void Main(string[] args)
{
swap( ref a, ref b);
Console.WriteLine("a:"+a+" b:"+b);
Console.ReadKey();
}
public static void swap(ref int a,ref int b)
{
a = a^b; //0011
b=a^b; //0001
a=a^b; //0010
}
相关文章推荐
- 触发Full GC执行的情况
- 全球.CN域名总量回升至1036万:3月净增51.3万
- Learning Python -- Java 通过JyThon调用Python实现的规则
- 设置core文件路径
- 【蓝桥杯练习系统】 基础练习 特殊的数字
- Oracle_PL/SQL的基本写法_BEGIN_END块结构及简单的事务实现
- href
- 我入住博客了,希望大家共同进步
- Linux learning in Cadence
- C++的历史
- HashMap排序
- 考研数据结构与算法----单链表的创建和读取(1)
- 动态可视化库Vis.js:秀外慧中,可处理大量动态数据
- C#用正则表达式 获取标签的属性或值
- 菜鸟学Linux(5)品尝鸟哥私房菜——…
- 64 Java 单例
- 菜鸟学Linux(4)品尝鸟哥私房菜——…
- 菜鸟学Linux(3)品尝鸟哥私房菜——…
- 大学生为何后悔上大学
- 公司IIS 项目发布 注意点