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

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

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

剑指Offer面试题:2.二维数组中的查找此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“”,获取验证码。在微信里搜索“”或者“”或者微信扫描右侧二维码都可以关注本站微信公众号。

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

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

二 代码实现

#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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Freeswitch+webSocket 尝试开发呼叫中心工具条actionbar 成功小结

    Freeswitch+webSocket 尝试开发呼叫中心工具条actionbar 成功小结好久没有写文章,因为我在酝酿大招。^_^呼叫中心工具条开发环境:LinuxCentos6.x+java1.8+websocket+Freeswitch1.5+API(提供其他语言调用工具条,不仅限于java)1、来电弹屏(DEMO演示了一个客户表,通过来电号码判断查询用户,并展示给坐席)2、电话状态变化提示 ringing,answer,han

  • Activity跳转到指定Fragment实例

    Activity跳转到指定Fragment实例最近做的一个项目,突然出现了这个问题,Activity中有四个fragment,分别是first,two,three,four,默认显示的是fragmenta。在开发过程中,first中跳转到另一个Activity,将这个外部Activity命名为B吧…我需要从first中跳转到B中,完成一些设置,然后再从B中的返回按钮回到three,three中也有一个viewpa

  • Qt css颜色对照表

    Qt css颜色对照表css颜色代码对照FFFFFF#DDDDDD#AAAAAAFFFFFF#DDDDDD#AAAAAA#888888#666666#444444#000000#FFB7DD#FF88C2#FF44AA#FF0088#C10066#A20055#8C0044#FFCCCC#FF8888#FF3333#FF0000#CC0000#AA0000#880000#FFC8B4#FFA488#FF7744

  • mesh和ADhoc区别[通俗易懂]

    mesh和ADhoc区别[通俗易懂]adhoc网络和无线Mesh网络都采用分布式、自组织的思想形成网络,网络每个节点都具备路由功能,随时为其他节点的数据传输提供路由和中继服务。adhoc网络主要侧重应用于移动环境中,确保网络内任意两个节点的可靠通信,网络内数据流可以包括语音、数据和多媒体信息。无线Mesh网络是一种无线宽带接入网络,利用分布式思想构建网络,让用户在任何时间、任何地点都可以对互联网进行高速无线访问,是由ADh…

    2022年10月30日
  • [Android] 【每日更新书源】「阅读」APP -100+ 精品书源一键导入!每天自动更新最新书源!…

    [Android] 【每日更新书源】「阅读」APP -100+ 精品书源一键导入!每天自动更新最新书源!…我特地写了个爬虫爬取书源,每天自动更新书源(URL是固定的)!大家也可以定期导入一下!放心!导入时会自动去除重复书源的!前段时间我发过一个书源大礼包的帖子,不过现在已经无法编辑修改了,所以我又开了一个新帖子,这次内容可不一样了!我上次说过想要自动抓取阅读官方公众号里分享的书源,结果结果公…

  • 什么是devops思想在运维方面的具体实践_devops四个维度

    什么是devops思想在运维方面的具体实践_devops四个维度DevOps是最近非常火的一个概念,谈IT流程建设不说点DevOps都不好意思和人打招呼。但是DevOps究竟是个什么东西,这个东西能不能用?怎么用?什么样的情况才叫做DevOps落地成功?对于这些问题的答案,虽然网上有铺天盖地的文章和教程,但是一般来说都是从理论或者方法论上去阐述,也有大厂的实施经历。个人就感觉这里的它山之石,很难攻玉了。最终还是得思考下DevOps的由来,综合自己所在企业的现实…

发表回复

您的电子邮箱地址不会被公开。

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