您的位置:首页 > 其它

冒泡排序的两种写法

2016-05-09 20:08 232 查看
方法一:根据数组的长度循环遍历,并判断如果第i个值大于第j个值,那么就把最大的交换到最后面去。
public static void Sort1(int[] array) {
for (int i = 0; i < array.length; i++) {
for (int j = i; j < array.length; j++) {
if (array[i] > array[j]) {
array[i] = array[i] ^ array[j];
array[j] = array[j] ^ array[i];
array[i] = array[i] ^ array[j];
}
}
}
System.out.println(Arrays.toString(array));
}
方法二:根据数组的长度循环遍历,并判断如果前一个值小于后一个值,那么就把最大的交换到最后面去。
public static void Sort2(int[] array) {
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array.length - 1; j++) {
if (array[j] > array[j + 1]) {
array[j] = array[j] ^ array[j + 1];
array[j + 1] = array[j + 1] ^ array[j];
array[j] = array[j] ^ array[j + 1];
}
}
}
System.out.println(Arrays.toString(array));
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: