LeetCode——035

2023-11-10

这里写图片描述
/*
35. Search Insert Position My Submissions QuestionEditorial Solution
Total Accepted: 102229 Total Submissions: 274634 Difficulty: Medium
Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.

You may assume no duplicates in the array.

Here are few examples.
[1,3,5,6], 5 → 2
[1,3,5,6], 2 → 1
[1,3,5,6], 7 → 4
[1,3,5,6], 0 → 0

Subscribe to see which companies asked this question
*/

/*
解题思路:
方法一:使用STL 下界函数lower_bound
方法二:使用二分查找法(注意left与right的关系有无等号)
方法三:直接从头开始查找
*/

class Solution {
public:
    int searchInsert(vector<int>& nums, int target) {

        //方法一:由上一题可知,可以应用下边界函数来求
        //return lower_bound(nums.begin(),nums.end(),target)-nums.begin();

        //方法二:此题想考察的是折半查找
        if(nums.back()<target)return nums.size();
        int left=0,right=nums.size()-1;

        while(left<right){
            int mid=left+(right-left)/2;
            if(nums[mid]==target)return mid;
            else if(nums[mid]<target)left=mid+1;
            else right=mid;

        }
        return right;

        //方法三:直接从头查找
       /*   for (int i = 0; i < nums.size(); ++i) {
            if (nums[i] >= target) return i;
        }
        return nums.size();
       */


    }
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LeetCode——035 的相关文章

  • 寻找将集合映射到整数的双射函数

    对于任意两个序列 a b 其中 a a1 a2 an 且 b b1 b2 bn 0a b具有相同的元素 而不关心它们的顺序 例如 如果 a 1 1 2 3 b 2 1 3 1 c 3 2 1 3 则 f a f b f a f b 我知道有
  • 无需构建树即可预测霍夫曼压缩比

    我有一个二进制文件 我知道其中每个符号出现的次数 如果我要使用霍夫曼算法压缩它 我需要预测压缩文件的长度 我只对假设的输出长度感兴趣 而不对单个符号的代码感兴趣 因此构建霍夫曼树似乎是多余的 作为一个例子 我需要得到类似的东西 包含 4 个
  • 从三点求圆心的算法是什么?

    我在圆的圆周上有三个点 pt A A x A y pt B B x B y pt C C x C y 如何计算圆心 在Processing Java 中实现它 我找到了答案并实施了一个可行的解决方案 pt circleCenter pt A
  • 如何仅使用单个数组在 JavaScript 中模拟调用堆栈

    我正在看维基百科页面 https en wikipedia org wiki Call stack在调用堆栈上 并尝试理解这个图像 据我所知 哈哈 const memory memory 0 3 top of stack pointer m
  • URL路径相似度/字符串相似度算法

    我的问题是我需要比较 URL 路径并推断它们是否相似 下面我提供了要处理的示例数据 GROUP 1 robots txt GROUP 2 bot html GROUP 3 phpMyAdmin 2 5 6 rc1 scripts setup
  • C 埃及分数

    古埃及人仅使用以下形式的分数1 n因此任何其他分数都必须表示为这些单位分数的总和 而且 所有单位分数都是不同的 在C或Java中使任何分数成为埃及分数 总和越少越好 的好方法是什么 可以使用什么算法 分支定界 a 例如 3 4 1 2 1
  • 快速约会算法

    我在一家咨询公司工作 大部分时间都在客户所在地 正因为如此 我很少见到同事 为了更好地了解彼此 我们将安排一个晚宴 会有很多小桌子 方便人们聊天 为了在聚会期间与尽可能多的不同的人交谈 每个人都必须每隔一段时间 比如每小时 换一张桌子 如何
  • 在常数空间中创建 1..N 的随机排列

    我正在寻找枚举固定空间中数字 1 N 的随机排列 这意味着我无法将所有数字存储在列表中 原因是 N 可能非常大 超过可用内存 我仍然希望能够一次遍历这样一个数字的排列 只访问每个数字一次 我知道对于某些 N 可以这样做 许多随机数生成器随机
  • 如何有效地找到距给定点最远的点(从一组点中)?

    我正在寻找一种算法或数据结构来解决以下问题 给你一组点 S 然后你会得到另一个点形式的 Q 查询 对于每个查询 找到集合中距离给定点最远的点 集合中最多有 10 5 个点和 10 5 个查询 所有点的坐标都在 0 到 10 5 范围内 我想
  • 绘制多边形

    我正在使用 Google Maps API V3 根据路径绘制多边形 该路径是随机未排序坐标点 LatLng 的数组 这会产生以下形状 Polylines intersect Problem 由于多边形的形状取决于路径中点的顺序 因此如何对
  • 具有 2 个属性的背包算法。如何在 3d 数组中实现它?

    当有超过 1 个属性时 我无法理解背包问题 当有 1 个属性时 我必须编写一个使用具有 2 个属性的背包算法的程序 老师告诉我们 它必须在 3d 数组中完成 错误的实现将导致 O 2 n 处理时间 我无法想象这样的数组会是什么样子 假设这是
  • 举例解释bpe(字节对编码)?

    有人可以帮忙解释一下背后的基本概念吗BPE模型 除了这张纸 https arxiv org abs 1508 07909 目前还没有那么多解释 到目前为止我所知道的是 它通过将罕见和未知的单词编码为子词单元序列来实现开放词汇表上的 NMT
  • 在java中使用BUBBLE SORT对二维字符串数组进行排序

    类似的问题已经被问过 但从来没有关于二维字符串数组 因此在尝试了很长时间之后我找不到我想要的 我正在尝试使用 BubbleSort 对 java 中的 2D 字符串数组进行排序 作为输入 我收到一个二维字符串数组 一个表 以及您应该排序的
  • 每个术语出现的次数

    我得到了一个数组a n 2 where n can be 10 5最大时有n个科目和n个学生 全部编号为 1 2 n a i 0 and a i 1 1 lt i lt n 表示在第 i 个科目中 所有来自a i 0 to a i 1 通过
  • 在数据库中搜索时忽略空文本框

    此代码能够搜索数据并将其加载到DataGridView基于搜索表单文本框中提供的值 如果我将任何文本框留空 则不会有搜索结果 因为 SQL 查询是用 AND 组合的 如何在搜索 从 SQL 查询或 C 代码 时忽略空文本框 private
  • O(1) 算法确定节点是否是多路树中另一个节点的后代?

    想象一下下面的树 A B C D E F 我正在寻找一种方法来查询 F 是否是 A 的后代 注意 F 不需要是directA 的后代 在这种特殊情况下这是正确的 只需要针对更大的潜在后代节点池测试有限数量的潜在父节点 当测试一个节点是否是潜
  • 动态规划 (DP) 中的重叠子问题是什么?

    为了使动态规划适用 问题必须具有两个关键属性 最优子结构 and 重叠子问题 1 https en wikipedia org wiki Dynamic programming 对于这个问题 我们只关注后一个属性 有各种不同的定义重叠子问题
  • 高效列出目录中的所有子目录

    请参阅迄今为止所采取的建议的编辑 我正在尝试使用 WinAPI 和 C 列出给定目录中的所有目录 文件夹 现在我的算法又慢又低效 使用 FindFirstFileEx 打开我正在搜索的文件夹 然后我查看目录中的每个文件 使用 FindNex
  • 如何计算排列? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个关于 Java 排列的问题 Suppose I have five different elements in an arra
  • 如何设计 RESTful 搜索/过滤? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我目前正在 PHP 中设计和实现 RESTful API 然而 我并没有成功地实现我最初的设计 GET users list of users

随机推荐

  • Web 的攻击技术

    互联网上的攻击大都将 Web 站点作为目标 本章讲解具体有哪些攻击 Web 站点的手段 以及攻击会造成怎样的影响 简单的 HTTP 协议本身并不存在安全性问题 因此协议本身几乎不会成为攻击的对象 应用 HTTP 协议的服务器和客户端 以及运
  • 二进制包安装mysql5.7.36

    二进制包安装mysql 5 7 36 一 下载二进制软件件包 http mirrors 163 com mysql Downloads MySQL 5 7 mysql 5 7 36 linux glibc2 12 x86 64 tar gz
  • Python服务docker file 的两种方式

    方法1 简单方式 FROM python 3 6 8 slim stretch ENV LANG en US UTF 8 LC ALL en US UTF 8 COPY home code label recongnize RUN cp f
  • C#去掉字符串最后一个字符

    可以直接去掉 C 字符串的最后一个字符 有几种方法可以实现这个功能 方法1 使用 Substring 方法 string str Hello World string result str Substring 0 str Length 1
  • STM32单片机初学7-USART串口通信

    USART是Universal Synchronous Asynchronous Receiver Transmitter的英文缩写 意为通用同步 异步串行接收 发送器 它也是单片机中最常用通信方式之一 常用于单片机与上位机 蓝牙模块 GP
  • tomcat_jdbc配置

    tomcat jdbc配置 背景 最近在导入数据时经常出现connection has been closed的异常 排除了数据库8小时问题后 将wait timeout值设置了一个比较大的值 然并卯 最后捣腾到时数据库连接池上 最终通过增
  • 新星计划->线性表_定义+初始化->学习笔记~

    作者 芝士小熊饼干 系列专栏 数据结构 gt 线性表 支持我 点赞 收藏 留言 新星计划参与者 创作不易 十年运道龙困井 一朝得势入青云 金鲤岂是池中物 一遇风雨变化龙 线性表的机构特点 官方解释 线性表的顺序储存是指 在内存中用一组地址连
  • GLSL(着色器语言)

    GLSL 着色器语言 简介 OpenGLES的着色器语言GLSL是一种高级的图形化编程语言 其源自应用广泛的C语言 与传统的c语言不同的是 它提供了更加丰富的针对于图像处理的原生类型 诸如向量 矩阵之类 OpenGLES 主要包含以下特性
  • 【WebGL初学系列之一】WebGl基础知识

    一 WebGL简单介绍 在今年中 Web技术已经得到了巨大的发展 它们支持服务器和客户端之间的双向通讯 允许用户注册登录等等 而且Web应用程序提供丰富的用户界面 如图形图像 音频和视频等 与原生的应用程序相比 Web应用程序也存在着一定的
  • Springboot启动配置原理

    1Springboot启动配置原理 几个重要的事件回调机制 配置在META INF spring factories ApplicationContextInitializer SpringApplicationRunListener 只需
  • react 一些基础知识面试题

    1 props和state相同点和不同点 render方法在哪些情况下会执行 不同点 1 props不可以在组件内部修改 但state可以在组件内部修改 2 可以从父组件修改自组件的props 而不能从父组件修改自组件的state 相同点
  • 软件测试的目的与原则

    软件测试的目的 基于Glen Myers和Hetzel两位学者的著名测试论点 将测试的目的分为两派 Glen Myers认为测试时为了发现错误而执行软件程序的过程 Hetzel认为软件测试是对软件建立信心的一个过程 对软件进行的测试越多 越
  • sql:Mysql create view,function,procedure

    use test create database Liber use Liber 顯示數据庫 20150210 Geovin Du 涂聚文 SHOW DATABASES drop table BookKindList 书目录 create
  • 41. Linux系统配置FTP服务器并在QT中使用QFtp实现文件上传

    1 说明 这篇博客主要记录一些在Linux系统中搭建FTP服务器时踩过的一些坑 以及在使用QFtp上传文件时需要注意的问题 2 FTP环境搭建 在linux系统中 需要安装vsftpd 可以在终端中输入下面的命令进行安装 sudo apt
  • 前端vue2.6升级至vue2.7后如何使用旧版本vue-router与vuex,并且修改vuex

    1 访问 utils下新建 vueApi js import getCurrentInstance from vue 访问vuex export const useStore gt const vm getCurrentInstance i
  • Linux入门:vim编辑器

    vim编辑器 vim编辑器 vim编辑器的操作模式 命令模式 末行模式 插入模式 vim编辑器 vi 是 Unix 操作系统和类 Unix 操作系统中最通用的文本编辑器 vim 编辑器是从 vi发展出来的一个性能更强大的文本编辑器 可以主动
  • 刷脸支付服务商的盈利模式有很多

    在经济高速发展的今天 变革像是常态 特别是移动支付领域 每一次的变革都会带动一个风口 每一个风口必定会出现支付方式的转折 目前随着各大巨头推广的逐步深入 刷脸支付作为一个全新的领域 迅速走进生活的各个角落 给人们的生活带来极大的便利 成为时
  • SpringBoot实现微信小程序支付

    本文给大家讲解微信小程序支付全流程 以及相关功能源代码 项目不开放 带来不便尽请谅解 小程序支付主要 包含如下几步骤 1 预下单 调用微信统一下单接口进行预下单 2 小程序拿到支付参数唤醒支付 3 支付成功后发起退 款申请 本文使用okHt
  • 【wxWidgets 教程】安装、配置、HelloWorld篇(一)

    一 下载 wxWidgets 源码 下载地址 https github com wxWidgets wxWidgets git 这里 我下载了 wxWidgets 3 2 2 1 接下来便以这个版本为示例进行详细的安装介绍 二 编译配置 在
  • LeetCode——035

    35 Search Insert Position My Submissions QuestionEditorial Solution Total Accepted 102229 Total Submissions 274634 Diffi