案例
陣列內容:3 4 4 6 8 2 1 1 1
調換奇偶:3 1 1 1 8 2 4 4 6
思路
源於快速排序
方式1
參考**
#include #include方式2using
namespace
std;
bool isodd(int
num)
bool changearray(int *a, int
size)
++oddpartition;}}
return
true;}
intmain()
;
int size = sizeof(a) / sizeof(int
);
for(int i = 0; i < size; ++i)
cout
<< a[i] << "";
cout
<
changearray(a, size);
for(int i = 0; i < size; ++i)
cout
<< a[i] << "";
cout
<
}
參考**
#include #include擴充套件不是奇偶問題,別掉條件using
namespace
std;
bool isodd(int
num)
bool changearray(int *a, int
size)
}return
true;}
intmain()
;
int size = sizeof(a) / sizeof(int
);
for(int i = 0; i < size; ++i)
cout
<< a[i] << "";
cout
<
changearray(a, size);
for(int i = 0; i < size; ++i)
cout
<< a[i] << "";
cout
<
}
比如正負,需要把isodd()函式換成判斷正負的函式;
比如被5整除,需要把isodd()函式換成判斷被5整除的函式;
。。。。。。
這是一類問題,可以給出乙個模式來解決。如下
#include usingnamespace
std;
bool iseven(int
val)
void reorder(int *a, int size, bool (*func)(int))}
void reorderoddeven(int *a, int
size)
void tranverse(int *a, int
size)
intmain()
;
int size = sizeof(a) / sizeof(int
); tranverse(a, size);
reorderoddeven(a, size);
tranverse(a, size);
}
把陣列中的奇數放到偶數之前
案例 陣列內容 3 4 4 6 8 2 1 1 1 調換奇偶 3 1 1 1 8 2 4 4 6 思路 源於快速排序 方式1 參考 include include using namespace std bool isodd int num bool changearray int a,int si...
將陣列的奇數放到偶數前面
題目 輸入乙個整數陣列,實現乙個函式來調整該陣列中數字的順序,使得所有的奇數字於陣列的前半部分,所有的偶數字於位於陣列的後半部分 思路 宣告兩個指標,乙個指向該陣列的頭,另乙個指向該陣列的尾,將頭指標指向的第乙個偶數和尾指標指向的第乙個奇數交換即可,直到頭指標大於尾指標跳出迴圈。如下 void ti...
乙個字串,把奇數放到陣列前面,奇數放到陣列後面
兩頭向中間查詢 1.包括 號移動位置.2.數字移動位置 3.字串移動位置,等都可以按照這個辦法進行移動,節省時間 include stdafx.h include bool iseven int n void reorder int pdata,unsigned int length,bool fu...