合併兩個有序陣列 C 版

2021-07-07 09:52:51 字數 458 閱讀 7406

題目:

兩個從小到大排序以後的陣列a和b,其中a的末端有足夠的緩衝空容納b。

請編寫乙個方法,將b合併入a並排序。

給定兩個有序int陣列a和b,a中的緩衝空用0填充,同時給定a和b的真實大小int n和int m,請返回合併後的陣列。

思路:從後向前逐個比較填充a陣列。

貼**:

int cmpmax(int a, int b)

// n為陣列a的真實長度

// m為陣列b的真實長度

int* mergeab(int* a, int* b, int n, int m)

else if (a[cnt] == b[bdx])

}else if(adx < 0)

else if(bdx < 0)

cnt--;

} return a;

}

合併兩個有序陣列 c

題目描述 給定兩個有序整數陣列 nums1 和 nums2,將 nums2 合併到 nums1 中,使得 num1 成為乙個有序陣列。說明 示例 輸入 nums1 1,2,3,0,0,0 m 3 nums2 2,5,6 n 3輸出 1,2,2,3,5,6 思路1 建立乙個新的向量陣列,很常規的乙個思...

合併兩個有序陣列C

題目描述 有兩個排序的陣列a1和a2,內存在a1的末尾有足夠的空餘空間容納a2。請實現乙個函式,把a2中的所有數字插入到a1中,並且所有的數字是排序的。思路分析 從尾到頭邊比較,邊移入正確的位置,時間複雜度為o n include using namespace std void combin2ar...

合併兩個有序陣列(C )

合併兩個有序陣列 思路兩個陣列都非空 記兩個陣列分別為v1,v2,合併後的陣列為vc,設定兩個指標i j分別指向陣列v1,v2,令i j 0,若v1 i v2 j 則可以一直新增v1的元素到合併後的陣列vc直到條件不滿足,同時修改i 新增v2的元素到vc 如果乙個陣列被遍歷完,則應該終止 新增未遍歷...