c# 冒泡排序算法中三种前后值交换算法效率测试

对于两个变量值的交换除了用第三个变量作为中介还可以用其他算法来实现:如需要交换 a=1,b=2的值我们可以这样实现:

1、用第三个变量值交换

int a = 1;
int b = 2;
int c = a;
a = b;
b = c;

2、用加减法交换

a = a + b;
b = a - b;
a = a - b;
或
a = a - b;
b = a + b;
a = b - a;

3、用异或(XOR)法交换

 a = a ^ b;
 b = a ^ b;
 a = a ^ b;

详细可看codeproject上一篇文章 <<神奇的异或 The Magical Exclusive OR (XOR)>>下面我们要在冒泡排序算法中测试一下这三种交换方法的效率

show

 结果

 image


posted @ 2011-11-26 17:00  ZYB  阅读(1037)  评论(2编辑  收藏  举报