樣例
成都創(chuàng)新互聯(lián)公司專注于唐山網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供唐山營銷型網(wǎng)站建設(shè),唐山網(wǎng)站制作、唐山網(wǎng)頁設(shè)計、唐山網(wǎng)站官網(wǎng)定制、成都小程序開發(fā)服務(wù),打造唐山網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供唐山網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。給出A=[1,2,3,4],B=[2,4,5,6],返回 [1,2,2,3,4,4,5,6]
先上一個無腦的,可以AC
1 vector mergeSortedArray(vector &A, vector &B) {
2 // write your code here3 for(int i=0;i
其實這個題是面試場景出現(xiàn)的話,完全可以先弄一個暴力的出來,后面再慢慢優(yōu)化,這也是一個思路的過程
下面這一個就是很常規(guī)的了,就是申請了一個新數(shù)組,空間復(fù)雜度高一些
1 vector mergeSortedArray(vector &A, vector &B) {
2 // write your code here 3 vector result(A.size()+B.size(), 0);
4 int i = 0, j = 0;
5 int k = 0;
6 while (i < A.size() && j < B.size())
7 {
8 if (A[i] > B[j])
9 {
10 result[k++] = B[j++];
11 }
12 else
13 {
14 result[k++] = A[i++];
15 }
16 }
17 while (i < A.size())
18 {
19 result[k++] = A[i++];
20 }
21 while (j < B.size())
22 {
23 result[k++] = B[j++];
24 }
25 return result;
26 }