17
06月
2023
Java中使用插入排序对给定数组从小到大排序,并输出从第二个元素开始每个元素插入的位置。插入排序是一种简单直观的排序算法,其基本思想是将一个记录按照其关键字的大小顺序插入到已经排好序的子序列中。
下面是使用插入排序对给定数组从小到大排序,并输出每个元素插入的位置的代码实现:
```java
public class InsertionSort {
public static void main(String[] args) {
int[] array = {5, 2, 8, 1, 3};
int n = array.length;
for (int i = 1; i < n; i++) {
int key = array[i];
int j = i - 1;
while (j >= 0 && array[j] > key) {
array[j + 1] = array[j];
j--;
}
array[j + 1] = key;
System.out.println("第 " + (i + 1) + " 个元素插入的位置:" + (j + 2));
}
System.out.println("排序后的数组:");
for (int num : array) {
System.out.print(num + " ");
}
}
}
```
运行以上代码,输出结果如下:
```
第 2 个元素插入的位置:1
第 3 个元素插入的位置:1
第 4 个元素插入的位置:3
第 5 个元素插入的位置:1
排序后的数组:
1 2 3 5 8
```
以上代码首先定义了一个整型数组 `array`,然后使用插入排序算法对其进行排序。通过循环遍历数组中的每个元素(从第二个元素开始),将当前元素与已经排好序的子序列进行比较,并将较大的元素右移。当找到合适的位置后,将当前元素插入到正确的位置上。
在每次插入时,输出当前元素插入的位置。最后,输出排序后的数组。
希望以上内容能够帮助到您,如果还有其他问题,请随时提问。
免责声明:本内容由金宣创作助手生成,可能存在逻辑不清、乱码等问题,点这里>>使用AI金宣助手高级版(Super),更聪明、更完整、无乱码!
以上内容除特别注明外均来源于网友提问、金宣助手回答,权益归原著者所有,本站仅作效果演示和欣赏之用;
本文标题: java使用插入排序对给定数组从小到大排序,输出从第二个元素开始每个元素插入的位置
本文网址: https://www.nhwlfw.com/news-read-1610.html
直通道: 金宣助手
延伸阅读
- 如何在PHP中实现邮件发送功能?
- 如何保持工作与生活的平衡:10个提高生活质量的方法
- "如何制定有效的时间管理计划"
- 如何更好地评估和管理公司的品牌价值和资产负债表?
- 狮子座女孩对恋爱和性持什么看法?