#include#include//歸併作用是將兩個序列合併 l = 左邊起始位置,r = 右邊起始位置 rightend = 右邊終點位置
void merge(int a,int tmpa,int l,int r,int rightend)
while(l <= leftend) //如果左邊的陣列長一點則將後面的直接存入陣列
tmpa[tmp++] = a[l++];
while(r <= rightend)
tmpa[tmp++] = a[r++]; //反之
for(int i = 0; i < numelements;i++,rightend --) //用numelem來控制賦值的次數
a[rightend] = tmpa[rightend];
}void main()
; int b[11] = ;
merge(a,b,0,5,9);
for(int i=0;i<11;i++)
getchar();
}
兩個有序陣列合併
題目描述 已知陣列a中有m個按公升序排列的元素,陣列b中有n個按降序排列的元素,程式設計將a與b中的所有元素按降序存入陣列c中。輸入輸入有兩行,第一行首先是乙個正整數m,然後是m個整數 第二行首先是乙個正整數n,然後是n個整數,m,n均小於等於1000000。輸出輸出合併後的m n個整數,資料之間用...
C 兩個有序陣列合併
源自劍指offer中的思考題,有序陣列a b,a有足夠空間容納b,將a,b按順序排列。思路 也是用兩個指標從尾部開始進行依次比較,較大的放在新陣列的後邊,然後指標依次轉移。1.la,lb分別指向a和b的尾部,index指向融合陣列的尾部 2.然後比較,大的放在index出,index向前移動一位,然...
1124 兩個有序陣列合併
time limit 1 sec memory limit 128 mb submit 6260 solved 2262 submit status web board 已知陣列a中有m個按公升序序排列的元素,陣列b中有n個降序排列的元素,程式設計將a與b中的所有元素按降序存入陣列c中。輸入有兩行,...