java 如何写插入排序
时间: 2023-11-17 09:36:01 浏览: 37
插入排序是一种简单的排序算法,基本思想是把带排序的序列分为有序区和无序区,每次将一个无序的数据插入到有序区合适的位置上。
以下是Java实现插入排序的代码:
public static void insertionSort(int[] arr) {
int len = arr.length;
for (int i = 1; i < len; i++) {
int j = i - 1;
int temp = arr[i];
while (j >= 0 && arr[j] > temp) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = temp;
}
}
以上是基本的插入排序算法实现,可以根据需要进行优化和改进。
相关问题
用java写插入排序
下面是 Java 代码实现插入排序:
```
public static void insertionSort(int[] arr) {
for (int i = 1; i < arr.length; i++) {
int current = arr[i];
int j = i - 1;
while (j >= 0 && arr[j] > current) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = current;
}
}
```
这是一个通用的插入排序实现,可以排序任何数字数组。
用Java写124插入排序
好的,以下是用Java写的124插入排序的代码:
```java
public class InsertionSort {
public static void main(String[] args) {
int[] arr = {1, 2, 4};
insertionSort(arr);
for (int i : arr) {
System.out.print(i + " ");
}
}
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--;
}
arr[j + 1] = key;
}
}
}
```
这段代码实现了对数组 {1, 2, 4} 的插入排序。其中,insertionSort() 方法接收一个整型数组作为参数,使用插入排序算法对数组进行排序。具体来说,算法通过维护一个已排序子序列和一个未排序子序列,每次将未排序子序列中的元素插入到已排序子序列的合适位置,最终得到一个有序的数组。