/**
* 調整數值順序使奇數位於偶數前面
*
* @param arr
*/
public void reorderOddEven(int[] arr) {
if (null == arr || arr.length < 2) {
return;
}
int left = 0;
int right = arr.length;
while (left < right) {
if (isEven(arr[left])) {
swap(left, --right, arr);
} else {
left++;
}
}
}
private void swap(int l, int r, int[] arr) {
int t = arr[l];
arr[l] = arr[r];
arr[r] = t;
}
private boolean isEven(int n) {
return (n & 1) == 0;
}
劍指Offer學習-面試題21:調整數值順序使奇數位於偶數前面
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.