378.有序矩阵中第k小的元素(力扣leetcode) 博主可答疑该问题

一、笔记部分

思路:

1.二维有序矩阵寻找值都是从右端到左端,和上端到下端

2.先定位在那两行,然后再寻找具体位置,下面一排的与上一排的最后一个比较,如果小于那就是上一排的最后一个,如果大于那就是下面那排的那个数

 直接暴力二分:

直接两端开始找,小于中间值所对应的次数,然后判断K与这个次数,确定在那个区间,然后直到找到那个数。

这样是错的: 返回的值 之前不能有任何的改变数据。   所以上图当count=k的时候,执行了Left加了1,肯定不行的。所以返回也应该是right,当等于的情况应该是right操作,left返回,因为条件是left小于等于right一直执行,所以left是不能动的!

1.二分法的:递归的条件,Left为枢纽

2.既然Left是枢纽,所以当等于的时候不能改变Left的值

3.所以等于的时候是变化right的值,Left是一直保持着值的。

4.返回Left

 

二、数组与矩阵类型的高频面试题汇总:

https://blog.csdn.net/qq_40262372/article/details/113150843

三、各种类型的高频面试题汇总:

https://blog.csdn.net/qq_40262372/article/details/112556249

 

四、如有疑问可加QQ群讨论:725936761 博主免费答疑

猜你喜欢

转载自blog.csdn.net/qq_40262372/article/details/113151272
今日推荐