冒泡排序
int[] source = new int[] { 234, 235, 346, 134, 67, 90, 56, 96, 12, 48 };
for (int i = 0; i < source.length - 1; i++) {
for (int j = 0; j < source.length - 1 - i; j++) {
if (source[j] > source[j + 1]) {
int temp = source[j];
source[j] = source[j + 1];
source[j + 1] = temp;
}
}
}
快速排序
public static void main(String[] args) {
int[] data = new int[] { 234, 235, 346, 134, 67, 90, 56, 96, 12, 48 };
quickSort(data, 0, data.length - 1);
for (int i = 0; i < data.length; i++) {
System.out.println(data[i]);
}
}
public static void swap(int[] data, int i, int j) {
int temp = data[i];
data[i] = data[j];
data[j] = temp;
}
public static void quickSort(int[] data, int start, int end) {
if (start < end) {
int base = data[start];
int low = start;
int high = end + 1;
while (true) {
while (low < end && data[++low] - base <= 0)
;
while (high > start && data[--high] - base >= 0)
;
if (low < high) {
swap(data, low, high);
} else {
break;
}
}
swap(data, start, high);
quickSort(data, start, high - 1);
quickSort(data, high + 1, end);
}
}