21xrx.com
2024-12-26 11:27:58 Thursday
登录
文章检索 我的文章 写文章
Java 数字排序算法代码:实现简单高效的数字排序
2023-09-16 18:14:20 深夜i     --     --
Java 数字排序算法 代码 简单 高效

Java是一种非常流行的编程语言,它提供了丰富的库和工具来帮助我们解决各种问题。其中一个常见的问题是如何对一组数字进行排序。在本文中,我们将介绍一些简单而高效的数字排序算法的Java代码实现。

首先,我们将介绍最常用的排序算法之一,冒泡排序。这个算法通过多次迭代来比较相邻的元素,并根据需要交换它们的位置。在每一次迭代中,最大的元素都会“冒泡”到数组的末尾。下面是一个使用冒泡排序算法对数组进行升序排序的Java代码示例:


public class BubbleSort {

  public static void bubbleSort(int[] arr){

    int n = arr.length;

    for (int i = 0; i < n-1; i++){

      for (int j = 0; j < n-i-1; j++){

        if (arr[j] > arr[j+1]){

          // 交换arr[j]和arr[j+1]的位置

          int temp = arr[j];

          arr[j] = arr[j+1];

          arr[j+1] = temp;

        }

      }

    }

  }

  public static void main(String[] args) {

    int[] arr = 22;

    bubbleSort(arr);

    System.out.println("排序后的数组:");

    for (int num : arr) {

      System.out.print(num + " ");

    }

  }

}

接下来,我们将介绍另一个常用的排序算法,插入排序。这个算法从第二个元素开始,将每个元素插入到已排序的子数组中的正确位置。这样,每次迭代,已排序的子数组都会增长一个元素。下面是一个使用插入排序算法对数组进行升序排序的Java代码示例:


public class InsertionSort {

  public static void insertionSort(int[] arr){

    int n = arr.length;

    for (int i = 1; i < n; i++){

      int key = arr[i];

      int j = i - 1;

      while (j >= 0 && arr[j] > key){

        arr[j+1] = arr[j];

        j = j - 1;

      }

      arr[j+1] = key;

    }

  }

  public static void main(String[] args) {

    int[] arr = 11;

    insertionSort(arr);

    System.out.println("排序后的数组:");

    for (int num : arr) {

      System.out.print(num + " ");

    }

  }

}

最后,我们将介绍选择排序算法。这个算法通过多次迭代来选择数组中的最小元素,并将其放在已排序的子数组的末尾。下面是一个使用选择排序算法对数组进行升序排序的Java代码示例:


public class SelectionSort {

  public static void selectionSort(int[] arr){

    int n = arr.length;

    for (int i = 0; i < n-1; i++){

      int minIndex = i;

      for (int j = i+1; j < n; j++){

        if (arr[j] < arr[minIndex])

          minIndex = j;

        

      }

      int temp = arr[minIndex];

      arr[minIndex] = arr[i];

      arr[i] = temp;

    }

  }

  public static void main(String[] args) {

    int[] arr = 22;

    selectionSort(arr);

    System.out.println("排序后的数组:");

    for (int num : arr) {

      System.out.print(num + " ");

    }

  }

}

总结来说,这篇文章介绍了三种简单而高效的数字排序算法的Java代码实现:冒泡排序、插入排序和选择排序。无论使用哪种算法,我们都可以通过比较和交换数组中的元素来实现排序。这些算法是初学者学习排序算法的良好起点,并且在现实世界中也被广泛应用。通过掌握这些算法,我们能够更好地理解排序的原理,并应用到不同的场景中。

  
  

评论区

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