就是传统的冒泡冒泡排序,注释中写的还是比较清楚的的,可以直接读,代码如下:
1 | public class Solution { |
这里在两个数据交换上用了三种方法,一种是用传统的方法,引入第三方变量作为临时存储的介质;另一种采用加法的性质,现将两数(a,b)之和赋值给a,然后用a减去b字得到a的原值并赋值给b,此时再用a-b获得b原来的值并赋值给a,完成两个数之间的交换;最后一种是评论区大神给的异或计算(注意是异或不是加法)进行交换的方法,为了防止第二种情况大数加减时出现的溢出问题。
1 | public class Solution { |
这里在两个数据交换上用了三种方法,一种是用传统的方法,引入第三方变量作为临时存储的介质;另一种采用加法的性质,现将两数(a,b)之和赋值给a,然后用a减去b字得到a的原值并赋值给b,此时再用a-b获得b原来的值并赋值给a,完成两个数之间的交换;最后一种是评论区大神给的异或计算(注意是异或不是加法)进行交换的方法,为了防止第二种情况大数加减时出现的溢出问题。