點:按某種維度去聚集問題,典型的陣列按相遇問題搞
題意:如陣列[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
思路:按某種維度去聚集問題,典型的陣列按相遇問題搞。兩個指標乙個在頭乙個在尾,乙個向前乙個向後,不斷一方把本方不符的和對方不符的進行交換,注意一方不符對方符合時要移動對方指標直到發現對方也不符為止。
**:
#include #include int main ()
std::cout << std::endl;
for (int i = 0, j = 19; i < j;) else if (l % 2 == 1 && r % 2 == 1) else if (l % 2 == 0 && r % 2 == 0) else
}for (int i = 0; i < 20; i++)
std::cout << std::endl;
return 0;
}
奇偶數分離
描述 有乙個整型偶數n 2 n 10000 你要做的是 先把1到n中的所有奇數從小到大輸出,再把所有的偶數從小到大輸出。輸入第一行有乙個整數i 2 i 30 表示有 i 組測試資料 每組有乙個整型偶數n。輸出第一行輸出所有的奇數 第二行輸出所有的偶數 樣例輸入210 14樣例輸出 1 3 5 7 9...
奇偶數分離
時間限制 3000 ms 記憶體限制 65535 kb 難度 1 描述 有乙個整型偶數n 2 n 10000 你要做的是 先把1到n中的所有奇數從小到大輸出,再把所有的偶數從小到大輸出。輸入第一行有乙個整數i 2 i 30 表示有 i 組測試資料 每組有乙個整型偶數n。輸出第一行輸出所有的奇數 第二...
奇偶數分離
奇偶數分離 時間限制 3000 ms 記憶體限制 65535 kb 難度 1 描述 有乙個整型偶數n 2 n 10000 你要做的是 先把1到n中的所有奇數從小到大輸出,再把所有的偶數從小到大輸出。輸入 第一行有乙個整數i 2 i 30 表示有 i 組測試資料 每組有乙個整型偶數n。輸出 第一行輸出...