赞
踩
原题
不懂就问系列,求解答:为什么这其中得到的left可以保证还是矩阵中的元素?
原题参照官答的理解如下:
利用矩阵同一行右边元素一定小于左边元素以及同一列下方元素一定小于上方元素的特性,可以确定,在矩阵内任意子块里,右下角元素大于这个子块里的每一个元素。这样给定一个值mid,可以在矩阵中查找小于等于mid值的元素的总数——通过函数isLeft()实现。在函数kthSmallest()中,使用二分查找,找到符合条件的值。代码如下:
class Solution {
public:
bool isLeft(vector<vector<int>>& matrix,int mid, int k,int n)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。