【查网页源码】【简单的手机直播源码】【X神龙波段指标源码】java快速排序源码_java快速排序的代码

时间:2024-11-24 22:37:44 来源:海龟线源码 编辑:红拐弯游戏源码

1.排序有哪几种方法?请列举。快速快速并用 JAVA 实现一个快速排序

java快速排序源码_java快速排序的排序排序<strong>查网页源码</strong>代码

排序有哪几种方法?请列举。并用 JAVA 实现一个快速排序

       插入排序,源码简单的手机直播源码选择排序,快速快速X神龙波段指标源码冒泡排序,排序排序连续涨停天数指标源码快速排序等

       快速排序

       public class QuickSort {

        public static void main(String[] args) {

        int[] array = { 9,源码python的源码是什么 8, 7, 6, 5, 4, 3, 2, 1, 0, -1, -2, -3 };

        System.out.println("Before sort:");

        ArrayUtils.printArray(array);

        quickSort(array);

        System.out.println("After sort:");

        ArrayUtils.printArray(array);

        }

        public static void quickSort(int[] array) {

        subQuickSort(array, 0, array.length - 1);

        }

        private static void subQuickSort(int[] array, int start, int end) {

        if (array == null || (end - start + 1) < 2) {

        return;

        }

        int part = partition(array, start, end);

        if (part == start) {

        subQuickSort(array, part + 1, end);

        } else if (part == end) {

        subQuickSort(array, start, part - 1);

        } else {

        subQuickSort(array, start, part - 1);

        subQuickSort(array, part + 1, end);

        }

        }

        private static int partition(int[] array, int start, int end) {

        int value = array[end];

        int index = start - 1;

        for (int i = start; i < end; i++) {

        if (array[i] < value) {

        index++;

        if (index != i) {

        ArrayUtils.exchangeElements(array, index, i);

        }

        }

        }

        if ((index + 1) != end) {

        ArrayUtils.exchangeElements(array, index + 1, end);

        }

        return index + 1;

        }

        }

copyright © 2016 powered by 皮皮网   sitemap