国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

leetcode88 Merge Sorted Array

taohonghui / 2655人閱讀

摘要:題目要求將兩個有序數組合并至其中一個數組并且該新數組仍然有序。所以我們可以換一種思維方式,從大至小遍歷,這樣可以將較大的元素直接填入當前的位置而且不用考慮移動其它的元素。

題目要求
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.

Note:
You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2. The number of elements initialized in nums1 and nums2 are m and n respectively.

將兩個有序數組合并至其中一個數組并且該新數組仍然有序。

思路和代碼

一般的合并數組,我們會考慮利用一個新數組,并用兩個指針分別遍歷并順序比較兩個數組的元素,將較小的那個那個元素添加至結果數組之中。
但是此時我們需要將兩個數組合并至已存在的一個數組之中,如果還是按照那種方法,我們需要在插入元素之后將當前的元素順序后移,這回帶來巨大的性能損耗。所以我們可以換一種思維方式,從大至小遍歷,這樣可以將較大的元素直接填入當前的位置而且不用考慮移動其它的元素。這種方法的時間復雜度為O(m+n)
代碼如下:

    public void merge(int[] nums1, int m, int[] nums2, int n) {
        
        //nums1的指針
        int pointer1 = m-1 ;
        //nums2的指針
        int pointer2 = n-1 ;
        for(int j = m+n-1 ; pointer1>=0 && pointer2>=0 && j>pointer1 ; j--){
            if(nums2[pointer2] >= nums1[pointer1]){
                nums1[j] = nums2[pointer2--];
            }else{
                nums1[j] = nums1[pointer1--];
            }
        }
        //將剩余的nums2中的元素填入nums[1]
        while(pointer2>=0){
            nums1[pointer2] = nums2[pointer2];
            pointer2--;
        }
    }

總之,挺簡單的一道題


想要了解更多開發技術,面試教程以及互聯網公司內推,歡迎關注我的微信公眾號!將會不定期的發放福利哦~

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/67119.html

相關文章

  • leetcode 88 Merge Sorted Array

    摘要:題目假設數組的長度大于需要排序的元素數量數組的后位為。解法看到這道題時一種常規思路可能是,從頭遍歷兩個數組,將的元素插入到的合適的位置。 題目詳情 Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. 題目的意思是,輸入兩個已經排好序的數組nums1和nu...

    bbbbbb 評論0 收藏0
  • leetcode部分題目答案之JavaScript版

    摘要:自己沒事刷的一些的題目,若有更好的解法,希望能夠一起探討項目地址 自己沒事刷的一些LeetCode的題目,若有更好的解法,希望能夠一起探討 Number Problem Solution Difficulty 204 Count Primes JavaScript Easy 202 Happy Number JavaScript Easy 190 Reverse Bi...

    alphahans 評論0 收藏0
  • leetcode 部分解答索引(持續更新~)

    摘要:前言從開始寫相關的博客到現在也蠻多篇了。而且當時也沒有按順序寫現在翻起來覺得蠻亂的。可能大家看著也非常不方便。所以在這里做個索引嘻嘻。順序整理更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新 前言 從開始寫leetcode相關的博客到現在也蠻多篇了。而且當時也沒有按順序寫~現在翻起來覺得蠻亂的。可能大家看著也非常不方便。所以在這里做個索引嘻嘻。 順序整理 1~50 1...

    leo108 評論0 收藏0
  • [LintCode/LeetCode] Merge Sorted Array

    Problem Given two sorted integer arrays A and B, merge B into A as one sorted array. Notice You may assume that A has enough space (size that is greater or equal to m + n) to hold additional elements ...

    summerpxy 評論0 收藏0
  • [Leetcode] Merge Sorted Array 合并數組

    摘要:但是如果我們從后往前,合并到第一個數組的最后,則不用位移。注意將和都先減,用和來代表下標,避免兩個數組為空時拋出空指針異常。 Merge Sorted Array 最新更新請見:https://yanjia.me/zh/2019/02/... Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1...

    quietin 評論0 收藏0

發表評論

0條評論

taohonghui

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<