复制
收藏
提问
简洁

写一个Java排序代码

692ec78e2
0秒前
全网
文档
学术
百科
知识库
时间不限
自动
回答简洁模式
深入研究一些

快速排序Java实现

快速排序是一种高效的排序算法,其基本思想是通过一个基准值将数组分为两部分,一部分的元素都比基准值小,另一部分的元素都比基准值大,然后对这两部分继续进行排序。

public class QuickSort {
    public static void quickSort(int[] array, int low, int high) {
        if (low < high) {
            int pivotIndex = partition(array, low, high);
            quickSort(array, low, pivotIndex - 1);
            quickSort(array, pivotIndex + 1, high);
        }
    }

    private static int partition(int[] array, int low, int high) {
        int pivot = array[high];
        int i = low - 1;
        for (int j = low; j < high; j++) {
            if (array[j] < pivot) {
                i++;
                // 交换 array[i] 和 array[j]
                int temp = array[i];
                array[i] = array[j];
                array[j] = temp;
            }
        }
        // 交换 pivot 到它最终的位置
        int temp = array[i + 1];
        array[i + 1] = array[high];
        array[high] = temp;
        return i + 1;
    }

    public static void main(String[] args) {
        int[] array = {10, 7, 8, 9, 1, 5};
        quickSort(array, 0, array.length - 1);
        for (int value : array) {
            System.out.print(value + " ");
        }
    }
}

这段代码实现了快速排序算法,其中quickSort方法负责递归地对数组进行排序,partition方法用于找到基准值的最终位置并进行数组的划分。在main方法中,我们创建了一个示例数组并调用quickSort方法进行排序,最后打印排序后的数组。2346

你觉得结果怎么样?
如何实现Java冒泡排序?
Java选择排序算法示例
Java快速排序代码实现
Java归并排序的实现方法
Java堆排序算法详解
Java插入排序的代码示例

以上内容由AI搜集生成,仅供参考

在线客服