Java 在这种插入排序中,数组如何排序?我不知道';我不明白算法是如何运行的';t使整个数组的数字相同 公共静态void insertionSort(int[]数组) { int移位、迭代、锁定; for(iterate=1;iterate=0&&
在这种插入排序中,数组如何排序?我不知道';我不明白算法是如何运行的';t使整个数组的数字相同Java 在这种插入排序中,数组如何排序?我不知道';我不明白算法是如何运行的';t使整个数组的数字相同 公共静态void insertionSort(int[]数组) { int移位、迭代、锁定; for(iterate=1;iterate=0&&,java,arrays,sorting,insertion-sort,Java,Arrays,Sorting,Insertion Sort,在这种插入排序中,数组如何排序?我不知道';我不明白算法是如何运行的';t使整个数组的数字相同 公共静态void insertionSort(int[]数组) { int移位、迭代、锁定; for(iterate=1;iterate=0&&array[shift]>lock) { 数组[shift+1]=数组[shift]; 班次=班次-1; } 数组[shift+1]=锁; } } 请您解释一下,为什么您认为整个阵列之后会是一个数字?然后我们可以看看你的推理中的差距。建议你一步
公共静态void insertionSort(int[]数组)
{
int移位、迭代、锁定;
for(iterate=1;iterate=0&&array[shift]>lock)
{
数组[shift+1]=数组[shift];
班次=班次-1;
}
数组[shift+1]=锁;
}
}
请您解释一下,为什么您认为整个阵列之后会是一个数字?然后我们可以看看你的推理中的差距。建议你一步一步地完成代码并观察它的运行。几乎每个Java环境都有一个调试器,它允许你在示例数据上一步一步地完成程序并观察值的变化。从长远来看,学习这个工具并自己弄明白它会比让别人解释更好。一个不相关的注释:这里变量名的选择很奇怪。
public static void insertionSort (int [] array)
{
int shift, iterate, lock;
for (iterate = 1; iterate < array.length; iterate++)
{
lock = array [iterate];
shift = iterate - 1;
// I don't understand this while loop. Wouldn't the whole array
// be 1 number afterwards?
while (shift >= 0 && array [shift] > lock)
{
array [shift + 1] = array [shift];
shift = shift - 1;
}
array [shift + 1] = lock;
}
}