java怎么实现快速排序算法

17次阅读
没有评论

共计 834 个字符,预计需要花费 3 分钟才能阅读完成。

快速排序是一种常用的排序算法,实现起来比较简单。以下是使用 Java 语言实现快速排序算法的示例代码:

public class QuickSort {public static void quickSort(int[] arr, int low, int high) {if (arr == null || arr.length == 0) {return;
        }
        
        if (low >= high) {return;
        }

        // 选择 pivot(基准元素)
        int middle = low + (high - low) / 2;
        int pivot = arr[middle];

        // 将小于 pivot 的元素放到左边,将大于 pivot 的元素放到右边
        int i = low, j = high;
        while (i <= j) {while (arr[i] < pivot) {i++;}
            while (arr[j] > pivot) {j--;}
            if (i <= j) {int temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
                i++;
                j--;
            }
        }

        // 递归排序左右两部分
        if (low < j) {quickSort(arr, low, j);
        }
        if (high > i) {quickSort(arr, i, high);
        }
    }

    public static void main(String[] args) {int[] arr = {6, 2, 8, 5, 1, 9, 4, 3, 7};
        quickSort(arr, 0, arr.length - 1);
        
        System.out.println("Sorted array:");
        for (int num : arr) {System.out.print(num + " ");
        }
    }
}

在这段代码中,quickSort方法使用递归来实现快速排序算法。首先选择一个 pivot(这里选择中间元素),然后将小于 pivot 的元素放到左边,将大于 pivot 的元素放到右边,最后递归对左右两部分进行排序。在 main 方法中,我们定义了一个数组并调用 quickSort 方法对其进行排序,并输出排序后的结果。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2024-05-27发表,共计834字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)