java使用插入排序对给定数组从小到大排序,输出从第二个元素开始每个元素插入的位置
以下是Java代码实现:
```java
public static void insertionSort(int[] arr) {
for (int i = 1; i < arr.length; 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;
System.out.println("第" + (i+1) + "个元素插入的位置为:" + (j+2));
}
}
```
在插入排序的过程中,我们记录每个元素插入的位置,即在内层循环中,每次将比当前元素大的元素向右移动时,记录下移动的位置。最后输出即可。
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。