1. 程式人生 > >練習題之調整陣列順序使奇數位於偶數前面

練習題之調整陣列順序使奇數位於偶數前面

題目:

輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,
使得所有的奇數位於陣列的前半部分,所有的偶數位於陣列的後
半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。

程式碼實現:

類似於冒泡,前偶後奇就交換。

​public class Solution {
    public void reOrderArray(int [] array) {
        for(int i=0;i<array.length;i++)
        {
            for(int j=array.length-1;j>i;j--)
            {
                if(array[j]%2==1&&array[j-1]%2==0)   //前偶後奇,交換
                {
                    array[j]^=array[j-1];
                    array[j-1]^=array[j];
                    array[j]^=array[j-1];
                }
            }
        }
    }
}