欢迎访问宙启技术站
智能推送

使用Java函数实现排序算法:冒泡排序、插入排序和选择排序

发布时间:2023-07-02 12:31:06

冒泡排序、插入排序和选择排序都是常见的排序算法,使用Java函数可以很方便地实现它们。

首先是冒泡排序算法。冒泡排序的思想是,从 个元素开始,两两比较相邻的元素,如果顺序不对则交换位置,一直往后迭代,直到没有相邻元素需要交换为止。下面是Java函数实现冒泡排序的代码:

public void bubbleSort(int[] arr) {
    int n = arr.length;
    for (int i = 0; i < n - 1; i++) {
        for (int j = 0; j < n - i - 1; j++) {
            if (arr[j] > arr[j + 1]) {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}

接下来是插入排序算法。插入排序的思想是,将待排序的元素逐个插入已排好序的元素中,直到全部元素都插入完毕为止。下面是Java函数实现插入排序的代码:

public void insertionSort(int[] arr) {
    int n = arr.length;
    for (int i = 1; i < n; i++) {
        int key = arr[i];
        int j = i - 1;
        while (j >= 0 && arr[j] > key) {
            arr[j + 1] = arr[j];
            j--;
        }
        arr[j + 1] = key;
    }
}

最后是选择排序算法。选择排序的思想是,每次从待排序的元素中选择最小(或最大)的一个元素,放到已排好序的元素的末尾,直到全部元素都排好序为止。下面是Java函数实现选择排序的代码:

public void selectionSort(int[] arr) {
    int n = arr.length;
    for (int i = 0; i < n - 1; i++) {
        int minIndex = i;
        for (int j = i + 1; j < n; j++) {
            if (arr[j] < arr[minIndex]) {
                minIndex = j;
            }
        }
        int temp = arr[minIndex];
        arr[minIndex] = arr[i];
        arr[i] = temp;
    }
}

这样,我们就用Java函数实现了冒泡排序、插入排序和选择排序算法。可以通过调用这些函数来对数组进行排序,使其按照从小到大的顺序排列。这些排序算法都是比较简单的,但在实际应用中仍然有一定的作用。