在Java中,有多種算法可用于對數組或集合進行從小到大的排序。以下是幾種常見的排序算法的示例代碼:
1. 冒泡排序(Bubble Sort):
public class BubbleSort {
public static void bubbleSort(int[] array) {
int n = array.length;
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; 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 = {5, 2, 8, 3, 1};
bubbleSort(array);
System.out.println(Arrays.toString(array));
}
}
2. 選擇排序(Selection Sort):
public class SelectionSort {
public static void selectionSort(int[] array) {
int n = array.length;
for (int i = 0; i < n - 1; i++) {
int minIndex = i;
for (int j = i + 1; j < n; j++) {
if (array[j] < array[minIndex]) {
minIndex = j;
}
}
// 交換最小元素與當前位置元素
int temp = array[minIndex];
array[minIndex] = array[i];
array[i] = temp;
}
}
public static void main(String[] args) {
int[] array = {5, 2, 8, 3, 1};
selectionSort(array);
System.out.println(Arrays.toString(array));
}
}
3. 插入排序(Insertion Sort):
public class InsertionSort {
public static void insertionSort(int[] array) {
int n = array.length;
for (int i = 1; i < n; i++) {
int key = array[i];
int j = i - 1;
while (j >= 0 && array[j] > key) {
array[j + 1] = array[j];
j--;
}
array[j + 1] = key;
}
}
public static void main(String[] args) {
int[] array = {5, 2, 8, 3, 1};
insertionSort(array);
System.out.println(Arrays.toString(array));
}
}
以上代碼示例分別實現了冒泡排序、選擇排序和插入排序算法。你可以根據需要選擇其中的一種算法來對整型數組進行從小到大的排序。這些算法也可以通過適當修改來對其他類型的數組或集合進行排序。在示例代碼中,我們使用`Arrays.toString()`方法將排序后的數組轉換為字符串并打印輸出。
請注意,以上算法只是一些基礎的排序算法,在實際應用中可能存在更優化的排序算法,如快速排序、歸并排序等。