21xrx.com
2024-12-28 14:34:30 Saturday
登录
文章检索 我的文章 写文章
Java语言实现快速排序的示例代码
2023-06-15 18:50:18 深夜i     --     --
Java 快速排序 算法实现

快速排序是一种高效的排序算法,Java语言天然支持递归调用,可以方便地实现快速排序。该算法的基本思想是选择一个元素作为基准,将数组分成两个部分,其中一部分的元素都小于基准,另一部分的元素都大于基准,然后对这两部分进行递归排序,最后将排序好的数组合并起来即可。

下面是Java语言实现快速排序的示例代码:


public static void quickSort(int[] arr, int left, int right) {

  if (left < right) {

    int pivot = partition(arr, left, right);

    quickSort(arr, left, pivot - 1);

    quickSort(arr, pivot + 1, right);

  }

}

private static int partition(int[] arr, int left, int right) {

  int pivot = arr[left];

  while (left < right) {

    while (left < right && arr[right] >= pivot)

      right--;

    

    arr[left] = arr[right];

    while (left < right && arr[left] <= pivot) {

      left++;

    }

    arr[right] = arr[left];

  }

  arr[left] = pivot;

  return left;

}

以上代码中,`quickSort`方法就是快速排序的算法实现,`partition`方法则是将数组划分为两部分的关键。其中,`pivot`就是我们选择的基准元素,通过比较将数组划分为两部分。递归调用`quickSort`方法完成排序。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复