剑指offer--面试题4:二维数组中的查找
来源:互联网 发布:java的封装性是通过 编辑:程序博客网 时间:2024/06/14 19:59
#include <stdio.h>bool Find(int *matrix, int row, int col, int number) {bool found = false; if(matrix == NULL && row <= 0 && col <=0 ) found=false; for(int i=0,j=col-1;found==false && i <= row-1 && j>=0;) //取右上角位置; 停止条件:行加到满i-->row,列减到j-->0。 {if(matrix[i*col+j] == number) //如果右上角位置元素==key, 找到,标记为true found=true; else if(matrix[i*col+j] > number)//如果右上角元素>key,则该列全部大于key 去掉该列 --j; else //如果右上角元素<key,则该行全部小于key 去掉该行 ++i;} return found;}int main(){int a; int arr[4][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 15, 16, 17, 18, 19 }; printf("数组为:\n"); for (int i = 0; i < 4; i++) //打印原来数组 { for (int j = 0; j < 4; j++) printf("%3d", arr[i][j]); printf("\n"); } printf("请输入一个数:"); scanf("%d", &a); if (Find((int *)arr,4,4, a)) printf(" %d在该矩阵中\n", a); else printf(" %d不在该矩阵中\n", a); return 0;}
1 0
- 剑指offer--面试题4:二维数组中的查找
- 【剑指offer】面试题 4:二维数组中的查找
- 剑指offer 面试题4:二维数组中的查找
- 《剑指Offer》面试题-二维数组中的查找
- 《剑指offer》面试题三 二维数组中的查找
- 【剑指offer】面试题3:二维数组中的查找
- 【剑指offer】面试题3:二维数组中的查找
- 剑指Offer:面试题3 二维数组中的查找
- 剑指offer:面试题三:二维数组中的查找
- 《剑指Offer》面试题3:二维数组中的查找
- 剑指offer面试题3-二维数组中的查找
- 【剑指Offer学习】【面试题3 :二维数组中的查找】
- 二维数组中的查找(剑指offer面试题3)
- 【剑指offer】 面试题3: 二维数组中的查找
- 《剑指Offer》面试题:二维数组中的查找
- 剑指Offer面试题3:二维数组中的查找
- 剑指Offer:面试题3 二维数组中的查找
- 剑指Offer 面试题三:二维数组中的查找
- Torch7入门续集(七)--- clone与net替换某一层
- js setTimeout携带局部参量的方法
- 数学建模 单变量优化和求解 黄金分割法
- Linux文件权限与属性
- shiro权限项目中的简单应用
- 剑指offer--面试题4:二维数组中的查找
- CentOS7再ssh-copy-id时的错误
- 总结leetcode开篇
- oschina &github是否一定需要配置SSH
- Python爬取数据并写入MySQL数据库
- centos7 开始 使用systemctl工具来管理服务程序,包括了service和chkconfig
- php中输出json对象的值
- mybatis探险之声明式事务管理
- 微信开发笔记