21xrx.com
2025-04-09 11:26:33 Wednesday
文章检索 我的文章 写文章
如何用Java实现常见排序算法?
2023-06-17 19:25:52 深夜i     15     0
Java 排序算法 快速排序

排序算法是计算机科学中的重要概念,它将一组数据按照一定的规则进行排序。

在Java中实现排序算法非常简单,Java标准库中提供了 Arrays.sort() 方法可以实现快速排序,同时还提供了 Comparator 接口可以自定义排序规则。除此之外,我们还可以手动实现各种排序算法,如冒泡排序、选择排序、插入排序、希尔排序、归并排序和堆排序等。

下面是 Java 中实现快速排序的代码:

import java.util.Arrays;
public class QuickSortExample {
  public static void main(String[] args) {
    int[] arr = 9;
    quickSort(arr, 0, arr.length - 1);
    System.out.println(Arrays.toString(arr));
  }
  public static void quickSort(int[] arr, int left, int right) {
    if (left < right) {
      int partitionIndex = partition(arr, left, right);
      quickSort(arr, left, partitionIndex - 1);
      quickSort(arr, partitionIndex + 1, right);
    }
  }
  private static int partition(int[] arr, int left, int right) {
    int pivot = left; // 选择第一个数作为基准值
    int index = pivot + 1;
    for (int i = index; i <= right; i++) {
      if (arr[i] < arr[pivot]) {
        swap(arr, i, index);
        index++;
      }
    }
    swap(arr, pivot, index - 1);
    return index - 1;
  }
  private static void swap(int[] arr, int i, int j) {
    int temp = arr[i];
    arr[i] = arr[j];
    arr[j] = temp;
  }
}

  
  

评论区