⭐Matrix Median

Naive Approach: Extract into Linear Array and Sort

int Solution::findMedian(vector<vector<int> > &A) {
    vector<int> linear;
    for(const vector<int> &row: A)
        for(const int &x: row)
            linear.push_back(x);

    sort(linear.begin(), linear.end());

    int n = linear.size();

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

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

Space Complexity: O(n)O(n)​

Time Complexity: O(log⁑n)O(\log n)​

Space Complexity: O(1)O(1)​

Last updated