牛客网剑指office系列:二维数组中的查找
牛客网剑指office系列
本系列应用于想要快速提升算法水平的人,最好有一定基础
二维数组中的查找
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
解题思路:数组是有序的
- 记录每一行最下面一个数 姑且称为 a
- 最下面一个数与target进行比较
- if(target>a) 那么行数++ (因为a是一列中最大的数,target仍比他大,那么就去找下一行)
- if(target<a) 那么列数–
- 直到找到target
核心代码
参考文献
《剑指Office》p38