LeetCode-Easy刷题(18) Merge Sorted Array

Posted 当以乐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode-Easy刷题(18) Merge Sorted Array相关的知识,希望对你有一定的参考价值。

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.


将两个排好序的数组合并成一个数组.
  //三个指针 从后往前(没新数组)
    public void merge(int[] nums1, int m, int[] nums2, int n) 
        if(nums1 ==null || nums2 == null)
            return;
        
        //三个指针
        int len = m + n -1;
        int one = m -1;
        int two = n -1;
        while(one>=0&&two>=0)
            if(nums1[one]>nums2[two])
                nums1[len] = nums1[one];
                one--;
                len--;
            else
                nums1[len] = nums2[two];
                two--;
                len--;
            
        
        while(two>=0)
            nums1[len] = nums2[two];
            len--;
            two--;
        
    


以上是关于LeetCode-Easy刷题(18) Merge Sorted Array的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode-Easy刷题 Valid Parentheses

LeetCode-Easy刷题(31) Single Number

LeetCode-Easy刷题 Remove Element

LeetCode-Easy刷题(19) Same Tree

LeetCode-Easy刷题(33) Min Stack

LeetCode-Easy刷题(33) Min Stack