26 easy 35. 搜索插入位置

news2024/11/19 17:27:01

 

//给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 
//
// 请必须使用时间复杂度为 O(log n) 的算法。 
//
// 
//
// 示例 1: 
//
// 
//输入: nums = [1,3,5,6], target = 5
//输出: 2
// 
//
// 示例 2: 
//
// 
//输入: nums = [1,3,5,6], target = 2
//输出: 1
// 
//
// 示例 3: 
//
// 
//输入: nums = [1,3,5,6], target = 7
//输出: 4
// 
//
// 
//
// 提示: 
//
// 
// 1 <= nums.length <= 10⁴ 
// -10⁴ <= nums[i] <= 10⁴ 
// nums 为 无重复元素 的 升序 排列数组 
// -10⁴ <= target <= 10⁴ 
// 
//
// Related Topics 数组 二分查找 👍 2271 👎 0


//leetcode submit region begin(Prohibit modification and deletion)
class Solution {
    //实际上就是找出序列中第一个比target大或者等于的数的位置;然后借用二分查找
    public int searchInsert(int[] nums, int target) {
        int l = 0;
        int r = nums.length - 1;
        int ans = nums.length;
        while (l <= r) {
            int mid = ((r - l) >> 1) + l; //或(r-l)/2+l
            if (nums[mid] < target) {
                l = mid + 1;
            } else if (nums[mid] == target) {
                return mid;
            } else {
                ans = mid;
                r = mid - 1;
            }
        }
        return ans;
    }
}
//leetcode submit region end(Prohibit modification and deletion)

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

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

相关文章

算法提高之楼兰图腾(树状数组)

楼兰图腾(树状数组) 核心算法&#xff1a;树状数组 将下标转化为二进制 例如11100100 父节点下标x 子节点下标i 由下图可知 每一个数都可以由其子节点**(如果有)**求和得到**由父节点找子节点&#xff1a;**每个子节点下标 –> x – 1 – lowbit(x – 1)由子节点找父节点&am…

19.创建帖子

文章目录 一、建立路由二、开发CreatePostHandler三、编写logic四、编写dao层五、编译测试运行 一、建立路由 这里要稍微注意的是&#xff1a;需要登录后才可以发表帖子&#xff0c;所以需要用到我们之前写的鉴权中间件。中间件对用户携带的token解析成功后&#xff0c;便会将…

深度解析Nginx正向代理的原理与实现

目录 前言 1. 什么是正向代理 2. Nginx正向代理的配置 3. Nginx正向代理的实现原理 4. 示例代码 5. 总结 前言 Nginx是一个高性能的Web服务器和反向代理服务器&#xff0c;但它也可以用作正向代理服务器。本文将深入解析Nginx正向代理的原理和实现&#xff0c;并提供相关…

排序算法之快速排序算法介绍

目录 快速排序介绍 时间复杂度和稳定性 代码实现 C语言实现 c实现 java实现 快速排序介绍 快速排序(Quick Sort)使用分治法策略。 它的基本思想是&#xff1a;选择一个基准数&#xff0c;通过一趟排序将要排序的数据分割成独立的两部分&#xff1b;其中一部分的所有数据…

市场复盘总结 20240313

仅用于记录当天的市场情况&#xff0c;用于统计交易策略的适用情况&#xff0c;以便程序回测 短线核心&#xff1a;不参与任何级别的调整&#xff0c;采用龙空龙模式 一支股票 10%的时候可以操作&#xff0c; 90%的时间适合空仓等待 昨天选出的个股&#xff0c;今日涨6.87% 二…

Vue+SpringBoot打造创意工坊双创管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 管理员端2.2 Web 端2.3 移动端 三、系统展示四、核心代码4.1 查询项目4.2 移动端新增团队4.3 查询讲座4.4 讲座收藏4.5 小程序登录 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的创意工坊双创管理…

JUC之JMM

Java内存模型JMM JMM三大特性&#xff1a;可见性、有序性、原子性 可见性 原子性&#xff1a;指一个操作是不可打断的&#xff0c;即多线程的环境下&#xff0c;操作不能被其他线程干扰 有序性 处理器在进行重排序时&#xff0c;必须要考虑指令之间的数据依赖性。多线程环境…

一款开箱即用的 Vue3 中后台管理系统框架

概述 Fantastic-admin是一个基于Vue.js技术栈的后台管理框架&#xff0c;设计用于提升开发效率和优化用户界面。它通常包括了一套完整的前端解决方案&#xff0c;如用户界面组件、工具和库&#xff0c;以支持快速开发高质量的后台产品。这个框架可能强调易用性、灵活性和高性能…

思科网络中如何进行动态NAT配置

一、什么是动态NAT&#xff1f;动态NAT与静态NAT的区别是什么&#xff1f; &#xff08;1&#xff09;动态NAT&#xff08;Network Address Translation&#xff09;是一种网络地址转换技术&#xff0c;它会动态地将内部私有网络中的局域网IP地址映射为公共IP地址&#xff0c;…

String、StringBuilder、StringBuffer 有什么区别?

1、典型回答 String、StringBuilder 和 StringBuffer 都是 Java 语言中&#xff0c;用于操作字符串的类&#xff0c;但它们在性能、可变性和线程安全性方面有一些区别 1、String&#xff1a;不可变字符串类&#xff0c;也就是说一旦创建&#xff0c;它的值就不可变。每次对 S…

基于java+springboot+vue实现的停车场管理系统(文末源码+Lw)23-258

摘 要 如今社会上各行各业&#xff0c;都喜欢用自己行业的专属软件工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。新技术的产生&#xff0c;往往能解决一些老技术的弊端问题。因为传统停车场管理系统信息管理难度大&#xff0c;容错率低&…

HarmonyOS NEXT应用开发之深色跑马灯案例

介绍 本示例介绍了文本宽度过宽时&#xff0c;如何实现文本首尾相接循环滚动并显示在可视区&#xff0c;以及每循环滚动一次之后会停滞一段时间后再滚动。 效果图预览 使用说明&#xff1a; 1.进入页面&#xff0c;检票口文本处&#xff0c;实现文本首尾相接循环滚动&#x…

创建空的Numpy数组

参考&#xff1a;Creating Empty Numpy Array Numpy 是一个开源的 Python 扩展库&#xff0c;用于科学计算和数据分析。它提供了高性能的多维数组对象&#xff0c;以及在这些数组上进行的各种操作。 在 Numpy 中&#xff0c;可以使用 numpy 模块的 empty 函数来创建一个空的 …

Vue3全家桶 - Vue3 - 【1】前置准备和介绍(VsCode插件 + 组合式API和选项式API的比较)

一、前言 Vue2.7是当前、同时也是最后一个 Vue2.x 的次级版本更新。Vue2.7 会以其发布日期&#xff0c;即2022年7月1日开始计算&#xff0c;提供18个月的长期技术支持。在此期间&#xff0c;Vue2将会提供必要的bug修复和安全修复。但不再提供新特性。Vue2的终止支持时间是2023…

C++ 有边数限制的最短路 Bellman_ford算法(带负权边)

给定一个 n 个点 m 条边的有向图&#xff0c;图中可能存在重边和自环&#xff0c; 边权可能为负数。 请你求出从 1 号点到 n 号点的最多经过 k 条边的最短距离&#xff0c;如果无法从 1 号点走到 n 号点&#xff0c;输出 impossible。 注意&#xff1a;图中可能 存在负权回路…

算法刷题Day4 | 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、面试题 02.07. 链表相交、142.环形链表II

目录 0 引言1 两两交换链表中的节点1.1 我的解题1.2 注意事项 2 删除链表的倒数第N个节点2.1 我的代码2.2 报错原因分析 3 链表相交3.1 我的解题 4 环形链表II4.1 我的解题 &#x1f64b;‍♂️ 作者&#xff1a;海码007&#x1f4dc; 专栏&#xff1a;算法专栏&#x1f4a5; 标…

10个让你事半功倍的工作效率技巧,让你成为高效率的现代人!

作为现代人&#xff0c;我们每天都在面对各种各样的任务和工作&#xff0c;有时候会因为繁忙而感到力不从心&#xff0c;导致效率变得非常低下。所以&#xff0c;在这篇文章中&#xff0c;我将分享10个能够帮助你提高工作效率的技巧&#xff0c;让你的工作事半功倍。 1. 制定计…

labview中6种机械动作的区别

1.单击时转换&#xff1a;单击时转换&#xff0c;需要手动转换或者赋值回复原来状态&#xff1b; 2.释放时转换&#xff1a;释放时时转换&#xff0c;需要手动转换或者赋值回复原来状态&#xff1b; 3.单击时转换保持到鼠标释放&#xff1a;触发两次&#xff0c;自动恢复原来状…

ppocr ERROR: When parsing line KeyError: None

训练百度飞桨 paddleOCR模型。 数据集没有问题&#xff0c;但报以上错误。 发现是手欠&#xff0c;多按了下回车&#xff0c;多了个 - 删掉就好了。

map和set的介绍和使用

文章目录 map和set关联式容器键值对set介绍模板参数 map介绍模板参数为什么map支持下标访问 multiset介绍 multimap map和set 关联式容器 我们在之前讲过STL的一些基础容器&#xff0c;例如vector&#xff0c;list&#xff0c;deque&#xff0c;forward_list等 这些其实统一…