Мой код для вставки сортировки:вставки не работает, как ожидалось
class insertionsort
{
public static void main(String s[])
{
int []A={12,5,8,87,55,4};
int []R=sort(A);
for(int i=0;i<A.length;i++)
{
System.out.println(R[i]);
}
}
static int[] sort(int A[])
{
int key,i,j;
for(j=1;j<A.length;j++)
{
key=A[j];
i=j-1;
while(i>=0 && A[j]<A[i])
{
A[j]=A[i];
i--;
}
A[i+1]=key;
}
return A;
}
}
Но результат не является правильным. Однако, если я заменил A[j]
на key
во время цикла и A[j]
с A[i+1]
в цикле цикла, код генерирует правильный результат. Есть ли разница между A[j]
и key
и A[j]
и A[i+1]
?
Соответственно, вы имеете в виду правильные? –
Да. Я не получаю ожидаемого результата –