88 合併兩個有序陣列

2021-09-22 02:47:45 字數 784 閱讀 9303

#因為陣列一的長度足夠,所以從連個陣列數字的最後乙個數字開始逆序比較,不斷後移資料,如果陣列一得前幾個數字始終大於第二個數字中的前幾個數字那麼利用切片覆蓋方法,直接將第二個陣列剩下的數字覆蓋到第乙個陣列中

if nums1[m-1]

>= nums2[n-1]

: nums1[m+n-1]

= nums1[m-1]

m = m -

1else

: nums1[m+n-1]

= nums2[n-1]

n = n-

1if n >0:

nums1[

:n]= nums2[

:n]

88 合併兩個有序陣列

略。知道是在nums1上變動。如果從nums1的頭部開始放,就會出現nums1緊接著的第乙個元素還沒有nums2從頭數第二個元素小的情形,這樣就沒有辦法比較了。而從nums1的最後乙個元素開始放,能夠保證nums1和nums2的最後乙個元素一定比彼此的倒數第二個元素大。所以選擇從nums1的最後乙個...

88 合併兩個有序陣列

給定兩個有序整數陣列 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 思路 建乙個新的陣列nums,長度為m n 用乙個fo...

88 合併兩個有序陣列

給定兩個有序整數陣列 nums1 和 nums2,將 nums2 合併到 nums1 中,使得 num1 成為乙個有序陣列。說明 初始化 nums1 和 nums2 的元素數量分別為 m 和 n。你可以假設 nums1 有足夠的空間 空間大小大於或等於 m n 來儲存 nums2 中的元素。示例 輸...