使用java语言写出插入排序的算法
时间: 2023-12-06 14:38:40 浏览: 31
以下是Java语言实现插入排序算法的代码:
```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 = { 12, 11, 13, 5, 6 };
insertionSort(arr);
System.out.println("排序后的数组:");
for (int i = 0; i < arr.length; ++i)
System.out.print(arr[i] + " ");
}
}
```
相关问题
使用java代码写出插入排序算法
以下是Java实现的插入排序算法代码:
```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 = { 12, 11, 13, 5, 6 };
insertionSort(arr);
System.out.println(Arrays.toString(arr));
}
}
```
对这些排序算法分别写Java程序
好的,我可以为您介绍一下一些排序算法,并给出相应的Java程序。
1. 冒泡排序(Bubble Sort):
冒泡排序算法的基本思想是通过相邻元素之间的比较及交换来实现排序。该算法重复地遍历排序列表,比较相邻元素,并按升序或降序交换相邻元素的位置,直到排序列表达到某个结束条件。
以下是Java程序:
```
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]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
```
2. 选择排序(Selection Sort):
选择排序算法的基本思想是依次选择列表中最小的数,并与列表中第一个数交换位置,然后再从剩余的数中选择最小的数,并与列表中第二个数交换位置……以此类推,最终得到一个有序的列表。
以下是Java程序:
```
public static void selectionSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
int min = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[min]) {
min = j;
}
}
int temp = arr[min];
arr[min] = arr[i];
arr[i] = temp;
}
}
```
3. 插入排序(Insertion Sort):
插入排序算法的基本思想是将未排序的元素依次插入到已排序序列的合适位置,直到全部元素排序完毕。
以下是Java程序:
```
public static void insertionSort(int[] arr) {
int n = arr.length;
for (int i = 1; i < n; i++) {
int j = i - 1;
int key = arr[i];
while (j >= 0 && arr[j] > key) {
arr[j+1] = arr[j];
j--;
}
arr[j+1] = key;
}
}
```
以上三种排序算法是最基本的排序算法,在实际应用中,还可以根据具体情况选择其他的排序算法。