P48-合并數組

題目

由兩個有序數組A1和A2,A1末尾有足夠多的空余空間容納A2,請實現一個函數,把A2中的所有數字插入到A1中,且所有的數字是排序的。

要求

在A1中做插入,時間復雜度O(n)

思路

step1. 求出A1和A2的數組長度

step2. 從后向前遍歷。p1指向A1尾部,p2指向A2尾部,p3指向新的A1尾部。比較p1和p2的大小,把大的存到p3處,移動相關的指針。

step3. 可能存在A1和A2一個走完了,一個沒走完。把沒走完的直接復制給p3即可。

代碼參考 ? ? ? ? ? ? ? ? ? ?

高效合并兩個有序數組

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容