- 二维数组查找:
(1)C语言实现方式:
测试用例:int AA[16]={1,2,8,9,2,4,9,12,4,7,10,13,6,8,11,15};
bool Find1(int * target, int rows,int colums,int number) //输入的行数和列数
{
int row=0, colum=colums-1; //实时变化的 /下标
if (target==NULL||rows<=0||colums<=0)//保持
{
return false;
}
while(row<rows&&colum>=0)
{
if(*(target+row*colums+colum)==number) //退出循环的条件
{
return true;
}
else if(number< (*(target+row*colums+colum) )) //注意这里二维数组 乘以colums 才对
{
colum--;
}
else
{
row++;
}
}
return false;
}
C++实现方式: