【Hot100】LeetCode—74. 搜索二维矩阵

news2024/11/15 3:42:45
  • 原题链接: 74. 搜索二维矩阵

1- 思路

二分

  • ① 实现一个二分函数
  • ② 对每行数组进行二分

2- 实现

⭐74. 搜索二维矩阵——题解思路

在这里插入图片描述

class Solution {
    public boolean searchMatrix(int[][] matrix, int target) {
        for(int[] m:matrix){
            if(binarySearch(m,target)){
                return true;
            }
        }
        return false;
    }


    // 二分左区间
    public boolean binarySearch(int[] nums,int target){
        int left = 0;
        int right = nums.length-1;
        while(left<=right){
            int mid = (left+right)/2;
            if(nums[mid]<target){
                left = mid +1 ;
            }else if (nums[mid] > target){
                right = mid-1;
            }else{
                return true;
            }
        }
        return false;
    }
}

3- ACM 实现

public class binarySearch {


    public static boolean isHave(int[][] nums ,int target){
        for(int[] n:nums){
            if(binarySearch(n,target)){
                return true;
            }
        }
        return false;
    }

    public static boolean binarySearch(int[] nums,int target){
        int left = 0;
        int right = nums.length;
        while(left<=right){
            int mid = (left+right)/2;
            if(nums[mid]<target){
                left = mid+1;
            }else if(nums[mid] > target){
                right = mid-1;
            }else{
                return true;
            }
        }
        return false;
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine();
        input = input.substring(2,input.length()-2);
        String[] parts = input.split("],\\[");
        String[] row = parts[0].split(",");

        int[][] nums = new int[parts.length][row.length];
        for(int i = 0 ; i < nums.length ;i++){
            String[] r = parts[i].split(",");
            for(int j = 0 ; j < r.length;j++){
                nums[i][j] = Integer.parseInt(r[j]);
            }
        }
        System.out.println("输入 target");
        int t = sc.nextInt();
        System.out.println("结果是"+isHave(nums,t));
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2096131.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【知识图谱】3、Python操作图数据库neo4j示例

今天突然想起上次知识图谱系列埋了一个坑&#xff08;【知识图谱】1、Neo4j环境搭建入门指南:从零开始玩转图数据库&#xff09;&#xff0c;说后续写一篇关于Python操作neo4j的示例。趁着周六有充足时间&#xff0c;这里写个demo补上。 本文demo还是以面试的求职者、岗位要求…

浅谈-Unity内存管理

灵魂拷问-什么是内存 物理内存虚拟内存内存寻址方位 物理内存 下面是一张i7的处理器的芯片细节图&#xff0c;在整个板载面积上我们可以很明显的看到Shared L3 Cache占用了最大面积。为什么&#xff1f;因为硬件产商为了让我们忽略掉CPU访问内存是一个非常慢速的过程&#x…

Nginx: TCP建立连接的优化和启用Fast Open功能

TCP 建立连接优化 在三次握手中&#xff0c;相关TCP的内核参数可优化这一过程 net.ipv4.tcp_syn_retries 6net.ipv4.tcp_synack_retries 5net.ipv4.tcp_syncookies 0net.ipv4.tcp_max_syn_backlognet.core.somaxconnnet.core.netdev_max_backlog 1 &#xff09; net.ipv4…

游戏:科技强国的璀璨星芒与经济增长新动力

游戏&#xff1a;科技强国的璀璨星芒与经济增长新动力 在时代的浪潮中&#xff0c;游戏正以一种令人瞩目的姿态&#xff0c;成为科技强国之路上一颗闪耀的星&#xff0c;同时也对经济有着多方面的深远影响。 从《黑神话&#xff1a;悟空》的爆火&#xff0c;到美国、英国、法国…

磐石云AXB小号平台同时支持AXYB、AXN、AXYBN

外卖订单&#xff0c;物流配送&#xff0c;金融&#xff0c;房地产&#xff0c;等行业都在使用订单小号或者说是工作号。 在当今数字化信息爆炸的时代&#xff0c;通信方式的多样化和复杂化给我们带来了便利&#xff0c;但也带来了管理的挑战。面对繁杂的通信需求&#xff0c;…

Ai Illustrator 取消吸附到像素点,鼠标拖动的时候只能到像素点

Ai Illustrator 取消吸附到像素点&#xff0c;鼠标拖动的时候只能到像素点 在做图的时候无意间变成吸附到像素点了&#xff0c;导致无法更细致的移动点。 像这样&#xff1a; 关闭的方法是打开上面菜单中的 【视图】取消勾选【对齐像素】 即可。 结果就是&#xff1a;

C++实现彩虹猫时空隧道特效(无害)

#include <Windows.h> // 如果不是在Visual Studio环境下运行的话W最好改小写。 using namespace std;int main() {for (int i 1; i < 10; i) {HDC hdc GetWindowDC(GetDesktopWindow());RECT rect;GetWindowRect(GetDesktopWindow(), &rect);StretchBlt(hdc, r…

240901-通过端口转发在局域网内访问WLS2中Gradio的Web应用

A. 需求描述 两台不同的电脑共用同一个路由器&#xff0c;其中一台电脑时Windows&#xff0c;上面安装了WSL2&#xff0c;我在WLS2中启动了一个Gradio的网络应用&#xff0c;并设置了server_name‘0.0.0.0’&#xff0c;另外一台电脑如何访问该网络应用。 B. 方法介绍 要使另一…

STM32H750+CubeIDE+FreeRTOS+ETH(LAN8720A)+LWIP

文章目录 STM32H750CubeIDEFreeRTOSETH(LAN8720A)LWIPCubeIDE配置RCC时钟树SYSETH串口MPUFreeRTOSLWIPGPIO然后就可以点击生成代码了&#xff01; 代码修改printf重定向补充硬件复位更改补充链接文件然后就可以编译下载ping成功了&#xff01; socket网络编程 STM32H750CubeIDE…

Freepik发布号称目前最强AI图像生成器Mystic

Freepik 于2024年8月27日正式推出了新的人工智能图像模型 “Mystic”&#xff0c;并号称是目前最强的AI图像生成器&#xff0c;本文从介绍Mystic开始&#xff0c;剖析其技术细节&#xff0c;功能特色&#xff0c;收费价格&#xff0c;并与当前市场上领先的 Midjourney V6.1 进行…

【dotnet】vscode配置dotnet开发环境

下载dotnet sdk https://dotnet.microsoft.com/en-us/download/visual-studio-sdks下载完安装&#xff0c;安装完毕在cmd中输入以下代码 dotnet出现以下结果代表安装完毕 在vscode终端中输入以下创建web项目 dotnet new webapp --output aspnetcoreapp --no-https上述命令…

[Jsprit]Jsprit学习笔记-vrp问题的求解

目录 一、整体的求解逻辑主要步骤 二、搜索策略的选择三、搜索策略执行解1、解的选择2、解的破坏3、解的接受3.1 新解的接受策略 一、整体的求解逻辑 下面是Jsprit实现的代码部分 public Collection<VehicleRoutingProblemSolution> searchSolutions() {logger.info(&q…

基于3D Slicer与matlab平台的图像引导介入手术-demo

1.实现手术手术导航的基本框架 2、基本协议框架 3、演示视频 DemoWithChinse2

unordered系列容器的实现

1. unordered_set与unordered_map的结构 我们知道STL中的unordered_set与unordered_map底层就是一个开散列的哈希表 1.1 unordered_set的结构 我们知道unordered_set其实就是K模型&#xff0c;所以unordered_set容器对红黑树的封装如下&#xff1a; template<class k, cl…

VTK随笔十二:体绘制(体绘制管线、vtkVolumeMapper、vtkVolume、不规则网格数据体绘制技术 )

体绘制&#xff0c;有时又称作三维重建(区别于投影图像的三维重建)&#xff0c;是一种直接利用体数据来生成二维图像的绘制技术。与面绘制不同&#xff0c;体绘制技术不需要提取体数据内部的等值面&#xff0c;它是一个对三维体数据进行采样和合成的过程。体绘制能够通过设置不…

【深度学习入门】计算机视觉任务

一、引言 对于神经网络&#xff0c;可以把中间的隐藏层看作一个黑盒子&#xff0c;这个黑盒子能自动选择如何提取特征&#xff0c;这不同于传统机器学习的人工操作&#xff0c;它的实现原理也是我们学习深度学习的重点。本文章以计算机视觉任务中的图像分类任务为例子&#xff…

zookeeper 集群搭建 及启动关闭脚本

1准备奇数台机子3&#xff0c;5&#xff0c;7 我准备的是三台 192.168.58.81 zookeeper-1 192.168.58.82 zookeeper-2 192.168.58.83 zookeeper-3 下载jdk 把他配置环境变量并检查是否是环境变量 echo $JAVA_HOME cd /opt/software wget http://mirrors.hust.edu.…

docker部署project-exam-system项目

8月30日笔记 项目实战&#xff1a;使用docker部署project-exam-system 1、背景&#xff1a; 使用基础的docker指令来创建镜像&#xff0c;实现项目的发布&#xff0c;使用Dockderfile&#xff0c;docker compose编排容器。 2、环境准备&#xff1a; &#xff08;1&#x…

sts 0/1 没有 pod生成 -> kube-controller-manager没了

kube-controller-manager.yaml 在 nerdctl ps -a 看不到 journalctl -xu kubelet > /tmp/kubelet.log /tmp/kubelet.log 老6

OpenSetting组件的用法

文章目录 1. 概念介绍2. 使用方法与主要功能2.1 使用方法2.2 主要功能 3. 示例代码4. 内容总结 我们在上一章回中介绍了"如何获取App自身信息"相关的内容&#xff0c;本章回中将介绍一个三方包:open_setting.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念…