Teşekkür ederim fakat dediğim gibi ben bu kod içerisinde çözmek istiyorum
Arkadaşın yazdığını ufak bir düzelterek, else girdiği zaman sayıdan sayıya atama yaparak işlem yapabilirsin hocam insert olmasına gerek yok

Java üzerinde daha önce fazla çalışmadım ondan dolayı tam anlamıyla bir yorum yapamıyorum.
public class TeklerBasta{
public static void main(String args[]) throws Exception
{
int a [] = {4,8,3,1,18,9,21,20,5,17};
int size, i, p, temp;
size = 10;
p = 0;
//Tekler için diziyi dönüyoruz
for(i = 0; i<size; i= i+1) {
if(a[i] % 2 != 0)
{
temp = a[i];
a[i] = a[p];
a[p] = temp;
p = p+1;
System.out.println(temp);
}
else
{
temp = a[i];
a[i] = a[size];
a[size] = temp;
size = size-1;
System.out.println(temp);
}
}
}
// A dizisindeki tekleri başa, çiftleri sona yazan program.
}
}