diff --git a/Merge Sorted Array.cpp b/Merge Sorted Array.cpp new file mode 100644 index 0000000..ff93ee3 --- /dev/null +++ b/Merge Sorted Array.cpp @@ -0,0 +1,25 @@ +class Solution { +public: + void merge(vector& nums1, int m, vector& nums2, int n) { + if(n==0) return; + int i=m-1, j=n-1; + int k=m+n-1; + while(i>=0 && j>=0){ + if(nums1[i]==nums2[j]) { + nums1[k--]=nums1[i--]; + nums1[k--]=nums2[j--]; + } + else if(nums1[i] < nums2[j]){ + nums1[k--]=nums2[j--]; + }else{ + nums1[k--]=nums1[i--]; + } + } + while(i>=0){ + nums1[k--]=nums1[i--]; + } + while(j>=0){ + nums1[k--]=nums2[j--]; + } + } +};