热门IT资讯网

二维数组中的查找

发表于:2024-11-27 作者:热门IT资讯网编辑
编辑最后更新 2024年11月27日,题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组,判断数组中是否含有该整数。分析:直接给出最容易的解法根据这个

题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组,判断数组中是否含有该整数。



分析:直接给出最容易的解法


根据这个思想,可以写出如下代码:

// 二维数组matrix中,每一行都从左到右递增排序,// 每一列都从上到下递增排序bool Find(int* matrix, int rows, int columns, int number){    bool found = false;    if(matrix != NULL && rows > 0 && columns > 0)    {        int row = 0;        int column = columns - 1;        while(row < rows && column >=0)        {            if(matrix[row * columns + column] == number)            {                found = true;                break;            }            else if(matrix[row * columns + column] > number)                -- column;            else                ++ row;        }    }    return found;}



0