/** * 使用兩個指標i和j,初始化均為0。然後j往後遍歷,若遇到了奇數,則將 a[j] 和 a[i] 交換位置,同時i自增1,這樣操作下來,同樣可以將所有的偶數都放在奇數前面 *
*/public
class
sortarraybyparity ;
sort(arr);
arrays.stream(arr).foreach(s -> system.out.print(s+ "
"));
}public
static
void sort(int
arr) }}
public
static
void swap(int a , int b , int
arr)
}
陣列奇數左邊偶數右邊位置不變
如下 自己看吧 public class testodd while array left 2 0 array right 2 0 if array left 2 0 array right 2 0 left right public static void swamp int left,int r...
把奇 偶數 或某種特徵的數 都放在陣列左邊問題
點 按某種維度去聚集問題,典型的陣列按相遇問題搞 題意 如陣列 1,5,3,2,4,7,8,66,34,21,23,56,99 希望把全部的奇數集中在陣列左邊,偶數放右邊,如 1,3,5,7,9,2,4,6,8,0 這樣 劍指offer面試題14 思路 按某種維度去聚集問題,典型的陣列按相遇問題搞。...
將陣列中負數放在正數前面
既然題目要求的是把負數放在陣列的前半部分,正數放在陣列的後半部分,因此所有的負數應該位於正數的前面。也就是說我們在掃瞄這個陣列的時候,如果發現有正數出現在負數的前面,我們可以交換他們的順序,交換之後就符合要求了。因此我們可以維護兩個指標,第乙個指標初始化為陣列的第乙個數字,它只向後移動 第二個指標初...