二维数组的查找问题
来源:互联网 发布:百度地图js api离线 编辑:程序博客网 时间:2024/05/16 13:00
题目:一个二维数组,每一行都按照从左到右递增,每一列都按照从上到下递增,查找一个数是否存在于二维数组中
思路:
代码如下:
#include<stdio.h>//bool Find(int (*p)[5]){}//以前习惯于将二维数组的传递这样写,可是这样并不好,因为[]里无法给变量//学会善于利用一维数组解决 rows:行 columns:列 number:要查找的数bool Find(int *arr,int rows,int columns,int number){ if(*arr == NULL||rows<1||columns<1) { return false; } int i = 0; while(i<columns && rows >= 0) { int tmp = arr[(rows-2)*(columns-1)+i]; if(tmp == number) { return true; } else if(tmp < number) { i++; } else { rows -= 1; } } return false;}int main(){ int arr[5]={}; int brr[25]={1,2,8,9,2,4,9,12,4,7,10,13,6,8,11,15}; printf("%d\n",Find(arr,0,0,0)); printf("%d\n",Find(brr,5,5,8)); printf("%d\n",Find(brr,5,6,8)); printf("%d\n",Find(arr,5,5,14));}总结:善于寻找规律,发现规律,利用规律。
阅读全文
0 0
- 二维数组的查找问题
- 二维数组的查找问题
- 二维数组的查找问题
- 二维数组查找问题
- 二维数组查找问题
- 二维数组查找问题
- 有序的二维数组的查找问题
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 二维数组的查找
- 数据库连接池定义、原理及使用
- 汇编程序调用C函数需要设置栈的原因
- Ubuntu16.04+Cuda8.0+Cudnn5.1+Opencv3.1吐血安装
- Java常用类及其方法(十)---->System
- PHP算法题
- 二维数组的查找问题
- Oracle11g下自动创建分区
- Arction客户案例——LightningChart被集成到Bode Analyzer Suite矢量网络分析仪中!
- A+B Problem IV
- 一个生成验证字符或数字的增强类(基于.net1.1)及调用示例
- Python学习第一记——猜数游戏
- 欧拉函数的求法(线性筛)
- linux下openvpn服务器搭建
- docker remote api 调用