以下是引用lizhijie在2007-4-29 23:21:35的发言:
算法很简单啊,知道快速排序法吧,从前面开始找到第一个偶数,从后面开始找到第一个奇数,两数交换,直到碰头!
就这样。
这个不是快速排序吧,不过有点它的思想.
头尾指针做交换直到交叉.
for(i=0,j=n-1;i<j;i++,j--)
{
while(a[i]%2==1)
{
i++;
}
while(a[j]%2==0)
{
j--;
}
if(i<j)
{
temp=a[i],a[i]=a[j],a[j]=temp;
}
}