Search a 2D Matrix
2016-03-01 21:57
260 查看
#include <vector> using namespace std; class Solution { private: bool search(vector<vector<int>>&ma, int start, int end, int target,int&column) { if (end < start) return false; int mid = (start + end) / 2; int mrow, mcolumn,temp; mrow = mid / column; mcolumn = mid%column; temp = ma[mrow][mcolumn]; if (temp == target) return true; else if (target < temp) return search(ma, start, mid - 1, target, column); else return search(ma, mid + 1, end, target, column); } public: bool searchMatrix(vector<vector<int>>& matrix, int target) { int row, column; row = matrix.size(); column = matrix[0].size(); return search(matrix, 0, row*column - 1, target,column); } };
相关文章推荐
- 算法设计的方法
- mysql 常见错误:Can't create table... errno150原因分析
- 算法设计的方法
- Mac的MySQL无法启动的原因
- 不稳定的传送门
- [leetcode323]Number of Connected Components in an Undirected Graph
- 基数排序
- Wikioi 1080一维树状数组
- win下如何解决在chrome的同源访问问题
- Android学习心得第四课
- Delete Last Element
- 魔卡少女
- Android 5.0之后 点击 悬浮穿回到顶部。
- Android Studio 1.5启动出现“SDK Manager: failed to install”问题的解决
- 差分约束
- centos 6.5 samba简单配置
- nodejsPath
- 7、压缩与解压缩
- 中序遍历二叉树——递归
- NYOJ+贪心+从大到小减,是有贪心根据的额