刷题之路之二维数组查找数据

原创 2015年11月20日 19:31:49

</pre><p></p><pre name="code" class="cpp">

给定一个二维数组,每行递增,每列递增。

4    5    6       8 

7     8     9       10 

9   12   15    17

12 13  16   20


如 二维数组,随机给出的一个二维数组。


代码如下   

  

 boolen search(int *data,int rows,int columns,int number)

{    

        boolen find=flase;

if(data==NULL||cows<=0||colmuns<=0)

return flase

     int row=0;

      int colmun=colmun-1;

while(row<rows&&colmun>=0)

{

if(data[row*colmuns+colmun==number){   break;)

               else if (data[row*colmuns+colmun>number)

  colmun--;

               else

                           row++:

}


return find;

}




           每次比较矩阵最右边的数字,因为该数字较特殊,为该行的最大值,该列的最小值。每次每次循环通过比较待查的数,可以缩小矩阵的查找范围。

      注意,二维数组中值定位运算。




  

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

[土狗之路]coursera C语言进阶习题 二维数组右上左下遍历

编程题#2: 二维数组右上左下遍历 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。) 注意: 总时间限制: 1000ms 内存限制: 65536...

Java菜鸟成长之路__Day_3_Java_二维数组

二维数组:就是元素为一维数组的数组。 格式: 数据类型 [] [] 数组名=new 数据类型[m] [n]; m:表示这个二维数组里有m个一维数组. n:表示每个一维数组里有n个元素. 其他...

剑指offer刷题之java实现的二维数组中的查找

/** * * @author 毛二 * @data 2015-8-8 * @comments * 二维数组中的查找。其中二维数组,每行数递增。每列数也递增。 * 那么,二维数...

oracle学习之路(四) ---------PL/SQL 表,二维数组(TABLE)

LOB类型ORACLE提供了LOB (Large OBject)类型,用于存储大的数据对象的类型。ORACLE目前主要支持BFILE, BLOB, CLOB 及 NCLOB 类型。 NCLOB存储大...

java 基础数据遍历(2)----二维数组查找

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

杨氏矩阵的查找【二维数组中数据的查找】

什么是杨氏矩阵就不再赘述,自己网查。 代码实现: #define _CRT_SECURE_NO_WARNINGS #include #include #include int find(...

数据结构与算法分析笔记与总结(java实现)--数组1:二维数组中的查找

数据结构与算法分析笔记与总结(java实现)--数组1:二维数组中的查找

重新解读剑指Offer之3题 二维数组中的查找

首先描述一下问题,存在一个二维数组,每一行数据从左到右递增,每一列数据从上到下递增。给定一个需要查找的参数,问在这个参数是否在二维数组中。关于几种不同算法的解释与实现。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)