帮我使用Insertionsort(插入排序)来进行一段任意数列的从小到大的排序并且使用java的class版本进行
时间: 2024-01-22 16:19:15 浏览: 81
用java实现插入排序InsertSort
5星 · 资源好评率100%
好的,以下是使用Java的class版本实现Insertion Sort(插入排序)算法的代码:
```java
public class InsertionSort {
public static void sort(int[] arr) {
int n = arr.length;
for (int i = 1; i < n; ++i) {
int key = arr[i];
int j = i - 1;
// Move elements of arr[0..i-1], that are greater than key, to one position ahead of their current position
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 = {5, 2, 6, 1, 3, 9, 4, 8, 7};
System.out.println("Original Array:");
printArray(arr);
sort(arr);
System.out.println("\nSorted Array:");
printArray(arr);
}
public static void printArray(int[] arr) {
int n = arr.length;
for (int i = 0; i < n; ++i) {
System.out.print(arr[i] + " ");
}
System.out.println();
}
}
```
在此代码中,我们首先定义了一个名为 `sort` 的静态方法,该方法接受一个整数数组作为参数,并使用插入排序算法对该数组进行从小到大的排序。然后我们定义了一个名为 `main` 的方法,其中我们定义了一个整数数组并使用 `printArray` 方法打印原始数组,然后调用 `sort` 方法对数组进行排序,最后再次使用 `printArray` 方法打印已排序的数组。
我们还定义了一个名为 `printArray` 的静态方法,该方法接受一个整数数组作为参数,并将其打印到控制台上。
以上代码的输出结果如下:
```
Original Array:
5 2 6 1 3 9 4 8 7
Sorted Array:
1 2 3 4 5 6 7 8 9
```
阅读全文