当前位置: 首页 > article >正文

力扣labuladong——一刷day09

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、力扣704. 二分查找
  • 二、力扣34. 在排序数组中查找元素的第一个和最后一个位置


前言


一、力扣704. 二分查找

class Solution {
    public int search(int[] nums, int target) {
        int left = 0, right = nums.length-1;
        while(left <= right){
            int mid = left + (right-left)/2;
            if(nums[mid] == target){
                return mid;
            }else if(nums[mid] > target){
                right = mid - 1;
            }else{
                left = mid + 1;
            }
        }
        return -1;
    }
}

二、力扣34. 在排序数组中查找元素的第一个和最后一个位置

class Solution {
    public int[] searchRange(int[] nums, int target) {
        int[] res = new int[2];
        int left = 0, right = nums.length -1, mid;
        while(left <= right){
            mid = left + (right-left)/2;
            if(nums[mid] == target){
                right = mid - 1;
            }else if(nums[mid] > target){
                right = mid -1;
            }else{
                left = mid + 1;
            }
        }
        if(left >= nums.length){
            res[0] = -1;
        }else{
            res[0] = nums[left] == target ? left : -1;
        }

        left = 0; right = nums.length - 1;
        while(left <= right){
            mid = left + (right-left)/2;
            if(nums[mid] == target){
                left = mid + 1;
            }else if(nums[mid] < target){
                left = mid + 1;
            }else{
                right = mid - 1;
            }
        }
        if(right < 0){
            res[1] = -1;
        }else{
            res[1] = nums[right] == target ? right : -1;
        }
        return res;
    }
}

http://www.kler.cn/news/106916.html

相关文章:

  • 通过阿里云创建accessKeyId和accessKeySecret
  • 线程池的理解
  • 字符串与基本类型之间的相互转换
  • vue2组件库-上传组件
  • 框架安全-CVE 复现SpringStrutsLaravelThinkPHP漏洞复现
  • Peter算法小课堂—归并排序
  • 【Linux】安装与配置虚拟机及虚拟机服务器坏境配置与连接
  • LibreOffice编辑excel文档如何在单元格中输入手动换行符
  • 如何中断一个正在运行的线程?
  • Java关于实例对象调用静态变量和静态方法问题
  • ue5 右击.uproject generator vs project file 错误
  • VM虚拟机的安装与配置及操作系统的安装
  • [RISC-V]verilog
  • DeepSpeed: 大模型训练框架 | 京东云技术团队
  • 【DOCKER】
  • 一个简单的注册页面,如有错误请指正(2.css)
  • “穷”用英语怎么说?柯桥成人英语培训
  • 数据结构与算法之排序: 归并排序 (Javascript版)
  • Jenkins入门级安装部署
  • 轻量封装WebGPU渲染系统示例<1>-彩色三角形(源码)
  • MySQL存储过程与函数
  • SOLIDWORKS® 2024 新功能 - SIMULATION
  • 人生岁月年华
  • Pytorch - 数据增广
  • Unity3D 如何用unity引擎然后用c#语言搭建自己的服务器
  • C# 基于腾讯云人脸核身和百度云证件识别技术相结合的 API 实现
  • ​ iOS自动混淆测试处理笔记
  • 干式电抗器的尺寸和重量对系统有什么影响?
  • Redis快速上手篇八(redission分布式锁)
  • AXI-Stream协议详解(3)—— AXI4-Stream IP核原理分析