二维有序数组中查找

时间:2014-03-08 09:52:05   收藏:0   阅读:453

二维有序数组(上下有序,左右有序)

1 2 8 9
2 4 9 12
4 7 10 13
6 8 11 15

中查找7

bool Find(int *matrix, int rows,int columns,int key){
	bool found = false;
	if (matrix != NULL && rows > 0 && columns > 0)
	{
		int row = 0;
		int column = columns-1;
		while (row < rows && column < columns)
		{
			if (matrix[row * columns + column] == key)
			{
				found = true ;
				break;
			}
			else if(matrix[row * columns + column] > key)
				--column;
			else
				++row;
		}
	}
	return found;
}
int main(){
	int num[4][4]= {1,2,8,9,2,4,9,12,4,7,10,13,6,8,11,15};
	cout<<Find(num[0],4,4,17)<<endl;
	system("pause");
	return 0;
}


二维有序数组中查找,布布扣,bubuko.com

原文:http://blog.csdn.net/h_wlyfw/article/details/20736389

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!