#include<iostream>
#define MAXROW 4
#define MAXCOL 4
using namespace std;
//在行列都排好序的矩阵中找数
//一般从右上角开始,如果角点比目标数小,那么划去一行,如果比目标数大,划去一列
//划去一行
bool findNumber(int m[][MAXCOL], int row, int col, int target)
{
int tR=0,tC=col-1;
while(tR < row && col >=0)
{
if(m[tR][tC] == target)
return true;
else if(m[tR][tC] < target)
tR++;
else
tC--;
cout<<"tR = "<<tR<<"tC = "<<tC<<endl;
}
return false;
}
int main()
{
int matrix[MAXROW][MAXCOL] = {{0,1,2,5},{2,3,4,7},{4,4,4,8},{6,7,7,9}};
cout<<findNumber(matrix,MAXROW,MAXCOL,6)<<endl;
return 0;
}
在有序矩阵中找特定元素
最新推荐文章于 2022-01-15 19:25:45 发布