題目:
輸入乙個整數陣列,實現乙個函式來調整該陣列中數字的順序,使得所有的奇數字於陣列的前半部分,所有的偶數字於位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。
思路:小白在這裡用了兩種方法。
①新定義了乙個陣列lastarray[ ] ,然後把array從頭到尾遍歷了一下,將遍歷到的奇數,從頭到尾放到lastarray中。再把array從尾到頭遍歷了一下,將遍歷到的偶數,從尾到頭放到lastarray中。因為題目最後要的是array,只好將lastarray中的每乙個元素再放到array中。
②這種方法類似於「氣泡排序」。先將遍歷到的最後乙個偶數放到最後,一直到所有的偶數都放到最後。這種遍歷是不會影響順序的。
注意:在第一種方法中,要注意array和lastarray的長度,使得定義的量不要溢位。
小筆記:
&&關係並
||關係或
public class solution
}for(int j = array.length-1 ; j >= 0 ; j--)
}for(int k = 0;k < array.length; k++)
}}public class solution }}
}}
調整陣列元素順序
輸入乙個整數陣列,實現乙個函式來調整該陣列中數字的順序,使得所有的奇數字於陣列的前半部分,所有的偶數字於位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。1,2,3,4,5,6,7 1,3,5,7,2,4,6 以下實現了兩個方法,乙個是帶返回值的,另乙個是不帶返回值的。帶返回值的可...
面試題 調整陣列順序
題目 輸入乙個整數陣列,實現乙個函式來調整該陣列中數字的順序使得所有的奇數字於陣列的前半部分,所有的偶數字於陣列的後半部分。首先這個題目只要求把奇數放前面,偶數放後面,所以我們不需要關注其他太多的因素,我們只需要給兩個指標,讓他們乙個指向最後乙個元素,這個指標只向前移動,乙個指向第乙個元素,這個指標...
劍指offer 調整陣列順序
時間限制 1秒 空間限制 32768k 本題知識點 陣列 題目描述 輸入乙個整數陣列,實現乙個函式來調整該陣列中數字的順序,使得所有的奇數字於陣列的前半部分,所有的偶數字於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。首先想到的是利用兩個輔助陣列,乙個儲存奇數,乙個儲存偶數,這樣的...