1樓:匿名使用者
一種最簡單的演算法是:
將該陣列的奇數、偶數分別放到另乙個陣列內,再分別對他們進行氣泡排序,最後將排好序的各陣列重新組合成乙個陣列,結果就出來了。如果要求原陣列內放奇偶數的位置不變,則只需在拆分為兩個陣列的時候,記住各奇偶數的原位置,在重新合成的時候,就把這些位置考慮再內。
2樓:匿名使用者
先把奇數選出來2a+1
再用冒泡法排序。
3樓:網友
如果你說的基數和歐熟指得是陣列下標的話就簡單了:
如果你懂得對整個陣列排序就可以分別對奇數序列和偶數序列排序橘扒早差,因為所有的奇數序列和偶數序列分別看作乙個陣列。
如果不是下標可以建立乙個結構體,包括兩個亮:陣列下標和值。將所有奇數取出來建立乙個數圓睜昌組進行排序,同理對偶數。之後根據下標重新合成乙個陣列即可。
已知長度為n的陣列的元素為整數,程式設計將陣列中的偶數從小到大排序,奇數位置不變。
4樓:網友
#include
using namespace std;
int main()
int *b = new int[num]; // 接收偶數的陣列for (int i = 0;i < size;i++)// 對偶數陣列進行賦值。
if (a[i] %2 == 0)
for (int i = 0;i < temp - 1;i++)// 對偶數陣列進行排序。
for (int j = i + 1;j < temp;j++)if (b[j] temp = 0;
for (int i = 0;i < size;i++)// 將偶數陣列裡的逐個元素插入到原陣列的偶數位置。
if (a[i] %2 == 0)
cout <<"將偶數順序插入到陣列後:";
for (int i = 0;i < size;i++)cout delete b; return 0;} 將乙個長度為10的整型陣列將奇數排在陣列的前面,其餘的偶數排在陣列的後面要求排列後偶數的順序與原來一 5樓:網友 可以利用氣泡排序演算法的思想來完成: #include int main(void) for (i = 0; i<9; i++)for (i = 0; i < 10; i++)likmjn''); return 0; 求解:把乙個陣列分奇偶性,然後奇數按從大到小順序排列,偶數按從小到大排列。。 6樓:楊子衍 先把陣列從小到大排序 從未到頭輸出所有奇數 再從頭到尾輸出所有偶數。 這樣就行。 程式設計隨機生成20個100以內的整數,將奇數和偶數分別放入不同的陣列中,分別排序,並輸出這兩個陣列中的資料 7樓:網友 沒有在編譯器中寫,直接在這裡寫的,如果有點小錯,你應該能改的, 不過應該沒錯。除非敲錯鍵盤了。 import ; import ; public class test public void test()else}"偶數:"); for(int n:even) 奇數:"); for(int n:even)}} 給個想法:excel vba中一唯陣列中奇數型從小到大排序偶數根著最近奇數變動下面有**求分析求解決 8樓:濮方雅 這兩句錯了: brr(j + 1) =brr(i + 1)brr(i + 1) =t1 對照禪遊前面的奇數胡亂列,改成褲襲檔這樣: brr(i + 1) =brr(j + 1)brr(j + 1) =t1 int array new int 一維陣列int temp 0 容器 int i 迴圈引數 int j 迴圈引數 for i 0 i中前一個數 和?int temp 0 for i 0 i c語言 編寫函式用氣泡排序法對陣列中的資料進行從小到大的排序.int i,j,temp for i 0 ia... 12 把所有正奇數從小到大排列,並按如下規律分組 1 3,5,7 9,11,13,15,17 19,21,23,25,27,29,31 現用等式am i,j 表示正奇數m是第i組第j個數 從左往右數 如a7 2,3 則a2013 a 45,7 把所有正奇數從小到大排列,並按如下規律分組 1 3,5,... include int main void for i 0 i 9 i for j i 1 j 9 j if num j include include int cmp const void a,const void b int main int argc,char argv int i qsort...c語言編寫函式將一維陣列從小到大排序,在主函式中讀入陣列的元
12把所有正奇數從小到大排列,並按如下規律分組 (13,5,79,11,13,15,
在C語言中編寫程式實現從小到大排序