Skip to content

378. Kth Smallest Element in a Sorted Matrix #12

Open
@w4irdo

Description

@w4irdo
# Java 二分查找法
class Solution {
    public int kthSmallest(int[][] matrix, int k) {
        int m = matrix.length, n = matrix[0].length;
        int lo = matrix[0][0], hi = matrix[m-1][n-1];
        
        while (lo <= hi){
            int mid = lo + (hi - lo) / 2;
            int cnt = 0;
            for (int i = 0;i < m; i++){
                for (int j = 0; j < n && matrix[i][j] <= mid; j++){
                    cnt++;
                }
            }
            if (cnt < k) lo = mid + 1; 
            else hi = mid - 1;
        }
        return lo;
    }
}

# Java 堆解法

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions