在一个每一行从左到右递增每一列从上到下递增的二维数组中查找一个整数是否存在
来源:互联网 发布:淘宝店铺号在哪里看 编辑:程序博客网 时间:2024/04/30 15:04
首先,可以从数组的右上角开始判断,试想,如果要查找的数比右上角的数要小的话,那么右上角所在的那一列都可以被排除了,当然如果等于右上角的话就直接返回了,而如果要查找的数比右上角的数要大的话,那么右上角所在的那一行都可以排除了,当判断之后所排除的那一行或者那一列不在考虑范围之内了之后,再次寻找剩下的右上角的数据,依次循环判断,直到行从0变到最大值,列从最大值变为0为止;
#include <iostream>#include <assert.h>using namespace std;bool SearchNum(int (*parr)[5], size_t row, size_t col, int num){ assert(parr); size_t tmp_row = 0; size_t tmp_col = col-1; while((tmp_row < row) && (tmp_col >= 0)) { if(parr[tmp_row][tmp_col] == num) return true; else if(parr[tmp_row][tmp_col] > num) --tmp_col; else ++tmp_row; } return false;}int main(){ int arr[5][5] = {{0, 1, 2, 3}, {5, 9, 10, 11}, {6, 13, 16, 17}, {7, 14, 19, 21}}; bool ret = SearchNum(arr, 4, 4, 9); //success return true, failed return false if(ret) cout<<"the num is exist..."<<endl; else cout<<"the num is not exist..."<<endl; return 0;}
1 0
- 在一个每一行从左到右递增每一列从上到下递增的二维数组中查找一个整数是否存在
- 在一个每一行从左到右递增每一列从上到下递增的二维数组中查找一个整数是否存在——3
- 在一个二维数组中,每一行都从左到右递增,每一列都从上到下递增,在这样一个数组里查找一个数
- 有一个二维数组杨氏矩阵,数组的每行从左到右是递增的,每列从上到下是递增的,在这样的数组中查找一个数字是否存在
- 有一个二维数组. 数组的每行从左到右是递增的,每列从上到下是递增的. 在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N)
- 有一个二维数组. 数组的每行从左到右是递增的,每列从上到下是递增的. 在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N);
- 有一个二维数组.----杨氏矩阵 数组的每行从左到右是递增的,每列从上到下是递增的. 在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N);
- //杨氏矩阵 有一个二维数组. 数组的每行从左到右是递增的,每列从上到下是递增的. 在这样的数组中查找一个数字是否存在。
- 杨氏矩阵:有一个二维数组,数组的每行从左到右都是递增的,每列从上到下都是递增的,从这样的数组中查找一个数字是否存在
- 剑指offer面试题3 在一个每一行递增 且每一列递增的二维数组中查找一个数
- 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数
- 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数
- 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- 问题描述大概如下:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
- 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数
- cannot run program "git.exe":CreateProcess error=2的问题
- Deep Learning in NLP (一)词向量和语言模型
- java操作redis
- caffe大厦的砖头Blob
- 自定义TxT文档下载
- 在一个每一行从左到右递增每一列从上到下递增的二维数组中查找一个整数是否存在
- dubbo的内核源码UML(容器启动以及Spring的shceme扩展)
- Grunt搭建自动化web前端开发环境--完整流程
- Dom4j完整教程
- 锋利的jQuery第三章学习笔记
- centOS release 6.3 下安装gcc编译器(分在线和rpm包安装)
- 《卡尔曼滤波原理及应用-MATLAB仿真》程序-3.4
- 64bit linux下执行arm-linux-gcc: 没有那个文件或目录
- 安卓recovery的编译