21xrx.com
2025-03-14 17:13:17 Friday
文章检索 我的文章 写文章
Java排序算法:冒泡排序、选择排序、插入排序等
2023-06-12 10:46:47 深夜i     5     0
Java 排序算法 冒泡排序 选择排序 插入排序

Java作为一种高级编程语言,对于排序算法的支持自然是不会缺失的。在Java中,排序算法种类繁多,常用的有冒泡排序、选择排序、插入排序等等。

首先,我们来看看冒泡排序。冒泡排序的基本思想就是一遍一遍地比较相邻的两个元素,每一轮比较之后将大的元素往后移,最终就能实现从小到大的排序。

代码实现如下:

public static void bubbleSort(int[] arr){
  int len = arr.length;
  for(int i=0;i
    for(int j=i+1;j
      if(arr[i]>arr[j]){
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
      }
    }
  }
}

接下来是选择排序。选择排序的核心思想是每次选择最小的元素放在最前面,不断重复这个过程直到整个数组有序。

代码实现如下:

public static void selectionSort(int[] arr){
  int len = arr.length;
  for(int i=0;i
    int minIndex = i;
    for(int j=i+1;j
      if(arr[j]
        minIndex = j;
      
    }
    int temp = arr[i];
    arr[i] = arr[minIndex];
    arr[minIndex] = temp;
  }
}

最后是插入排序。插入排序的思想是将未排序的元素插入到已排序的数组中,最终得到一个完全有序的数组。

代码实现如下:

public static void insertionSort(int[] arr){
  int len = arr.length;
  for(int i=1;i
    int preIndex = i-1;
    int current = arr[i];
    while(preIndex>=0 && arr[preIndex]>current){
      arr[preIndex+1] = arr[preIndex];
      preIndex--;
    }
    arr[preIndex+1] = current;
  }
}

通过以上三个排序算法的实现,可以更好地理解排序算法的本质及其实现方法。当然,Java还支持其他线程安全的排序算法,如归并排序、快速排序等等,有兴趣的读者可以自行尝试。

  
  

评论区