題目描述
已知陣列a中有m個按公升序排列的元素,陣列b中有n個按降序排列的元素,程式設計將a與b中的所有元素按降序存入陣列c中。
輸入輸入有兩行,第一行首先是乙個正整數m,然後是m個整數;第二行首先是乙個正整數n,然後是n個整數,m, n均小於等於1000000。
輸出輸出合併後的m+n個整數,資料之間用空格隔開。輸出佔一行。
樣例輸入
4 1 3 5 7樣例輸出3 6 4 2
7 6 5 4 3 2 1
#includeint a[1000000],b[1000000],c[2000000];
int main()
while(i <= m)
c[k++] = a[i++];
while(j <= n)
c[k++] = b[j++];
for(k = 1; k <= n+m-1; k ++)
printf("%d ",c[k]);
printf("%d\n",c[m+n]);
return 0;
}
還有乙個方法,可以學習一下,但對於範圍較大的不適用,比如說這一題。
#include int a[2000];
int main()
a[j+1] = t;
}scanf("%d",&n);
for(i = m; i < m+n; i ++)
a[j+1] = t;
}for(i = 0; i < m+n-1; i ++)
printf("%d ",a[i]);
printf("%d\n", a[i]);
return 0;
}
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中。輸入有兩行,...
1124 兩個有序陣列合併
題目描述 已知陣列a中有m個按公升序序排列的元素,陣列b中有n個降序排列的元素,程式設計將a與b中的所有元素按降序存入陣列c中。輸入 輸入有兩行,第一行首先是乙個正整數m,然後是m個整數 第二行首先是乙個正整數n,然後是n個整數,m,n均小於等於1000000。輸出 輸出合併後的m n個整數,資料之...