二维数组中的查找
算法思想:
我们可以先选取数组中右上角的数字,如果该数字等于要查找的的数字,查找过程结束;如果该数字比要查找的数字大,则剔除该数字所在的列;如果该数字比要查找的数字要小,则剔除该数字所在的行,这样可以缩小查找范围,直到找完,如果还没找到,说明该数组中不存在要查找的数字。
举例:
代码实现:
#include
using namespace std;
bool Find(int* matrix, int rows, int column, int num)
{
bool found = false;
int row = 0;
int col = column - 1;
while (row < rows && col >= 0)
{
if (matrix[row*column + col] == num)
{
found = true

这篇博客探讨如何在一个m*n的递增矩阵中高效地判断给定数值x是否存在。通过利用矩阵的特性,可以优化搜索算法,提高查找效率。
最低0.47元/天 解锁文章
396

被折叠的 条评论
为什么被折叠?



