剑指Offer面试题:2.二维数组中的查找

一题目:二维数组中的查找二代码实现>>>23>>>1

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

一 题目:二维数组中的查找

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

二 代码实现

#include "stdio.h"
#include <iostream>
using namespace std;

int a[16] = {1,2,8,9,
             2,4,9,12,
             4,7,10,13,
             6,8,11,15};

bool Find(int *a, int row, int col, int data)
{
    int i = row - 1;
    int j = 0;
    bool bFind = false;
    if (a)
    {
        while (i >=0 && j < col)
        {
            if (data > a[i+j*col])
            {
                j ++;
            }
            else if (data < a[i+j*col])
            {
                i --;
            }
            else
            {
                bFind = true;
                cout << i << " " << j << endl;
                break;
            }
        }
    }
    
    return bFind;
}
void main()
{
    bool ret = Find(a, 4, 4, 11);
    cout << ret << endl;
    return;
}

>>> 2 3
>>> 1

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120174.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 微信网页授权真实项目实例

    微信网页授权真实项目实例微信网页授权获取用户 OpenID 文章目录微信网页授权获取用户 OpenID pushpin 微信网页授权的前提 boom 网页授权域名配置 boom 前端获取 Code 前端拉起微信 OAuth2 0 授权解析 codecode 注意事项 boom 后端根据 code 获取用户 OpenID 通过 code 换取网页授权根据 access tokena 获取用户信息 access token 注意事项 boom 详情以及错误信

    2025年8月31日
    4
  • C++实现邮件群发的方法

    这篇文章主要介绍了C++实现邮件群发的方法,较为详细的分析了邮件发送的原理与C++相关实现技巧,非常具有实用价值,需要的朋友可以参考下本文实例讲述了C++实现邮件群发的方法。分享给大家供大家参考。具

    2021年12月27日
    37
  • React多页面跳转[通俗易懂]

    React多页面跳转[通俗易懂]render(){const{app:{locationQuery}}=this.props;////////////tolist.jsconst{子页面数据}=this.state;const{id}=locationQuery;///获取当前页面地址栏的idconstinfo=queryA…

    2022年5月30日
    35
  • 为什么Redis选择6379作为默认端口号?[通俗易懂]

    为什么Redis选择6379作为默认端口号?[通俗易懂]6379在是手机按键上MERZ对应的号码,而MERZ取自意大利歌女AlessiaMerz的名字。MERZ长期以来被antirez及其朋友当作愚蠢的代名词。Redis作者antirez同学在twitter上说将在下一篇博文中向大家解释为什么他选择6379作为默认端口号。而现在这篇博文出炉,在解释了Redis的LRU机制之后,向大家解释了采用6379作为默认端口的原因。原博文:http://anti…

    2022年5月27日
    98
  • 卸载symantec AntiVirus Client客户端,要求输入密码。。。。

    卸载symantec AntiVirus Client客户端,要求输入密码。。。。本文只针对WindowsNT/2000/XP。对于Windows95/98/ME,请参阅文章:如何手动卸载用于Windows95/98/Me的NortonAntiVirus企业版7.x客户端。从计算机删除NortonAntiVirus企业版(NAVCE)7.5或7.6的最简便方法是从WindowsNT控制面板的“添加/删除程序”中运行内置的卸

    2022年5月22日
    53
  • 鲲鹏920服务器_华为鲲鹏服务器

    鲲鹏920服务器_华为鲲鹏服务器安装任意Mysql版本都适用配置本地yum源备份原yum库文件并将新配置写入repo文件。#mv/etc/yum.repos.d//etc/yum.repos.d-bak#mkdir/etc/yum.repos.d#echo-e”[kunpeng]\nname=CentOS-kunpeng-Base-mirrors.huaweicloud.com\nbaseurl=https:…

    2022年10月16日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号