Page cover

⭐Median of Array

Naive Solution

double Solution::findMedianSortedArrays(const vector<int> &A, const vector<int> &B) {
    vector<int> merged;

    int i = 0, j = 0;
    while(i < A.size() && j < B.size())
        if(A[i] <= B[j])
            merged.push_back(A[i++]);
        else    
            merged.push_back(B[j++]);

    if( i < A.size())
        merged.push_back(A[i++]);

    if(j < B.size())
        merged.push_back(B[j++]);

    int n = merged.size();

    if(n == 1)
        return merged[0];

    if(n & 1)
        return merged[n / 2];
    else 
        return (merged[n / 2] + merged[n / 2 - 1]) / 2.0;
}

Time Complexity: O(m+n)O(m + n)​

Space Complexity: O(m+n)O(m + n)

Last updated