文档章节

二维数组中的查找

robinfly
 robinfly
发布于 2017/08/12 16:13
字数 119
阅读 5
收藏 0
点赞 0
评论 0

题目

在一个二维数组中,每一行中的数都按照从左到右、从上到下的递增顺序排列。要求输入一个整数,判断数组中是否存在该整数

实现代码

function find($matrix, $rows, $columns, $key)
{
     //TODO 参数异常处理
    $row = 0;
    $column = $columns - 1;
    $exist = false;

    while ($row < $rows && $column >= 0)
    {
        if ($matrix[$row][$column] == $key) {
            $exist = true;
            break;
        } elseif ($matrix[$row][$column] > $key) {
            --$column;
        } else {
            ++$row;
        }
    }

    return $exist;
}

来源

剑指offer - 面试题3 (P38)

© 著作权归作者所有

共有 人打赏支持
robinfly
粉丝 1
博文 53
码字总数 11337
作品 0
海淀
程序员
剑指offer-04-二维数组查找

更多题目请点这里《剑指offer》纪念版:目录索引 1、题目: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二...

triorwy ⋅ 05/24 ⋅ 0

【编程题目】二维数组中的查找(C++实现)

题目描述:在一个二维数组中,每一行按照从左至右递增的顺序排列,每一列按照从上至下递增的顺序排列。输入一个数字,判断数组中是否存在该数字。 一、分析 对于这个问题,一种很简单粗暴的方...

qq_28869927 ⋅ 2017/03/21 ⋅ 0

有序二维数组中的查找

题目:在一个二维数组中,每一行都按照从左到右递增的顺序排列,每一列都按照从上到下递增的顺序排列。输入这样一个二维数组和一个整数,判断数组中是否含有该整数。 思路:首先看到这样一个...

柠檬dream ⋅ 01/08 ⋅ 0

记录九度的一次TL

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

面码 ⋅ 2014/06/15 ⋅ 2

剑指offer 编程题(1):数组查找

时间限制:1秒 空间限制:32768K 热度指数:500065 本题知识点: 查找 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函...

coolwriter ⋅ 2017/12/13 ⋅ 0

算法知识梳理(4) - 数组第一部分

面试算法代码知识梳理系列 算法知识梳理(1) - 排序算法 算法知识梳理(2) - 字符串算法第一部分 算法知识梳理(3) - 字符串算法第二部分 算法知识梳理(4) - 数组第一部分 一、概要 本文介绍了有...

泽毛 ⋅ 2017/11/10 ⋅ 0

剑指Offer学习总结-二维数组寻找数字

剑指Offer学习总结-二维数组寻找数字 本系列为剑指Offer学习总结,主要是代码案例的分析和实现: 书籍链接:http://product.dangdang.com/24242724.html 原作者博客:http://zhedahht.blog....

wwlcsdn000 ⋅ 01/15 ⋅ 0

使用Javascript做算法题(四)Longest Increasing Path in a Matrix

前言 最近在LeetCode上做出了第一道难度为hard的题:) 觉得这题中规中矩挺不错的,mark一下:题目地址 题目描述 给出一个正整数矩阵,找出其中最长的递增路径的长度。只能上下左右移动,不能...

TokenYang ⋅ 2017/10/19 ⋅ 0

一份不错的php面试题(附答案)

一份不错的php面试题,附答案,有准备换工作的同学可以参考一下. 一、基础题 1. 写出如下程序的输出结果 <?php $str1 = null; $str2 = false; echo $str1==$str2 ? '相等' : '不相等'; $str3 ...

斑驳 ⋅ 2014/08/17 ⋅ 4

《剑指offer》面试题04:二维数组中的查找

更多剑指offer面试习题请点击: 《剑指offer》(第二版)题集目录索引 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,...

tianzez ⋅ 2017/10/19 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

BS与CS的联系与区别【简】

C/S是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、InFORMix或 SQL Server。客户端需要安装专用的客户端软件。 B/S是Brower/...

anlve ⋅ 34分钟前 ⋅ 0

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原...

问题终结者 ⋅ 54分钟前 ⋅ 0

在树莓派上搭建一个maven仓库

在树莓派上搭建一个maven仓库 20180618 lambo init 项目说明 家里有台树莓派性能太慢。想搭建一个maven私服, 使用nexus或者 jfrog-artifactory 运行的够呛。怎么办呢,手写一个吧.所在这个...

林小宝 ⋅ 今天 ⋅ 0

Spring发展历程总结

转自与 https://www.cnblogs.com/RunForLove/p/4641672.html 目前很多公司的架构,从Struts2迁移到了SpringMVC。你有想过为什么不使用Servlet+JSP来构建Java web项目,而是采用SpringMVC呢?...

onedotdot ⋅ 今天 ⋅ 0

Python模块/包/库安装(6种方法)

Python模块/包/库安装(6种方法) 冰颖机器人 2016-11-29 21:33:26 一、方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二、方法2: 多文件模块,带setup.py 下载模块包(压缩文件zip...

cswangyx ⋅ 今天 ⋅ 0

零基础学习大数据人工智能,学习路线篇!系统规划大数据之路?

大数据处理技术怎么学习呢?首先我们要学习Python语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。 Python:Python 的排名从去年开始就借助人工智能持续上升,现在它已经...

董黎明 ⋅ 今天 ⋅ 0

openJdk和sun jdk的区别

使用过LINUX的人都应该知道,在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的OpenJDK, 那么到底什么是OpenJDK,它与SUN JDK有什么关系和区别呢? 历史上的原因是,Ope...

jason_kiss ⋅ 今天 ⋅ 0

梳理

Redux 是 JavaScript 状态容器,提供可预测化的状态管理。 它是JS的状态容器,是一种解决问题的方式,所以即可以用于 react 也可以用于 vue。 需要理解其思想及实现方式。 应用中所有的 stat...

分秒 ⋅ 今天 ⋅ 0

Java 后台判断是否为ajax请求

/** * 是否是Ajax请求 * @param request * @return */public static boolean isAjax(ServletRequest request){return "XMLHttpRequest".equalsIgnoreCase(((HttpServletReques......

JavaSon712 ⋅ 今天 ⋅ 0

Redis 单线程 为何却需要事务处理并发问题

Redis是单线程处理,也就是命令会顺序执行。那么为什么会存在并发问题呢? 个人理解是,虽然redis是单线程,但是可以同时有多个客户端访问,每个客户端会有 一个线程。客户端访问之间存在竞争...

码代码的小司机 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部