冒泡排序:
public class bubbleSort {
public static void bubble(int[] array) {
for(int i = array.length - 1; i > 0 ; i--) {
for(int j = 0; j < i; j++) {
if(array[j] > array[j+1]) {
int temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
}
public static void main(String[] args) {
int[] array = {4};
bubble(array);
for(int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
}
冒泡排序改进一:
若在某次排序中,没有交换,则已排好序,无需继续。
public class improveBubbleSort {
public static void improveBubble(int[] array) {
boolean isSorted = false;
for(int i = array.length -1; i > 0 && !isSorted; i--) {
isSorted = true;
for(int j = 0; j < i; j++) {
if(array[j] > array[j+1]) {
isSorted = false;
int temp = array[j];
array[j] = array[j+1];
array[j+1] = array[j];
}
}
}
}
public static void main(String[] args) {
int[] array = {0,1,2,4,3};
improveBubble(array);
for(int a = 0; a < array.length; a++) {
System.out.print(array[a] + " ");
}
}
}