首页 > 其他分享 >【刷题笔记】35. Search Insert Position

【刷题笔记】35. Search Insert Position

时间:2023-09-04 13:00:58浏览次数:44  
标签:Insert Search target nums mid 35 数组 Output Input

题目

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.

Example 1:

Input: [1,3,5,6], 5
Output: 2

Example 2:

Input: [1,3,5,6], 2
Output: 1

Example 3:

Input: [1,3,5,6], 7
Output: 4

Example 4:

Input: [1,3,5,6], 0
Output: 0

题目大意

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

你可以假设数组中无重复元素。

解题思路

  • 给出一个已经从小到大排序后的数组,要求在数组中找到插入 target 元素的位置。
  • 这一题是经典的二分搜索的变种题,在有序数组中找到最后一个比 target 小的元素。

参考代码

package leetcode

func searchInsert(nums []int, target int) int {
	low, high := 0, len(nums)-1
	for low <= high {
		mid := low + (high-low)>>1
		if nums[mid] >= target {
			high = mid - 1
		} else {
			if (mid == len(nums)-1) || (nums[mid+1] >= target) {
				return mid + 1
			}
			low = mid + 1
		}
	}
	return 0
}

标签:Insert,Search,target,nums,mid,35,数组,Output,Input
From: https://blog.51cto.com/u_16110811/7348396

相关文章

  • xunsearch 搜索时按字段索引词加权
    在使用Xunsearch进行搜索时,我们可以通过XSSearch::addWeight针对某个字段添加权重索引词。该字段是否包含这个词都不影响搜索匹配结果,但如果包含会参与计算结果权重,使结果的相关度更高。常用于针对某一类数据提升搜索结果排序位置。如搜索包含"杭州"的结果,并且提升subjec......
  • 2023.35 AI检测器
    随着AIGC的火热,越来越多的内容是AI生成的,效率很高,但可能是会错。网上国外有人因为看到了AI创作的毒蘑菇的内容而误食了蘑菇中毒。要避免这种问题,我们要多方求证看到的内容,识别并谨慎对待AI生成的内容。可以用哪些方法识别AI创作的内容呢?1.检查语法和拼写错误:AI生成的内容可能会......
  • xunsearch 解决单字符、无意义字符被分词导致的搜索不准确问题
    Xunsearch配置好启动服务后,我们进行搜索会发现一些单字符如的、了、是、和等被分词,导致搜索结果中出现了与搜索目标不一致但包含这些字符的结果,如此会导致搜索结果不准确。对于这种问题Xunsearch提供了stopwords.txt配置文件解决这个问题,只需要将想过滤掉的字符一行一个添加......
  • 电商类面试问题--01Elasticsearch与Mysql数据同步问题
    在实现基于关键字的搜索时,首先需要确保MySQL数据库和ES库中的数据是同步的。为了解决这个问题,可以考虑两层方案。全量同步:全量同步是在服务初始化阶段将MySQL中的数据与ES库中的数据进行全量同步。可以在服务启动时,对ES库进行全量数据同步操作,以确保数据的一致性。而在停止服务......
  • 电商类面试问题--01Elasticsearch与Mysql数据同步问题
    在实现基于关键字的搜索时,首先需要确保MySQL数据库和ES库中的数据是同步的。为了解决这个问题,可以考虑两层方案。全量同步:全量同步是在服务初始化阶段将MySQL中的数据与ES库中的数据进行全量同步。可以在服务启动时,对ES库进行全量数据同步操作,以确保数据的一致性。而在停止服务时......
  • 向量搜索技术:基于Elasticsearch/PostgreSQL/Redis扩展的向量搜索数据库或独立向量搜索
    理论基础与研究向量数据库用于非结构化文本、图片、音频、视频搜索、推荐,将他们转换为数字向量表示来进行相似性(ANN)搜索。存储和搜索高维向量是其特征之一,通常采用高级索引技术和算法如HNSW,Annoy,或Faiss来实现。不同于SQL数据库,向量数据库更像nosql,用户接受使用sdk/API......
  • 【LuoGu】1351 联合权值
    [NOIP2014提高组]联合权值题目描述无向连通图\(G\)有\(n\)个点,\(n-1\)条边。点从\(1\)到\(n\)依次编号,编号为\(i\)的点的权值为\(W_i\),每条边的长度均为\(1\)。图上两点\((u,v)\)的距离定义为\(u\)点到\(v\)点的最短距离。对于图\(G\)上的点对\((u,v......
  • CH32X035 运放OPA和比较器CMP的应用
    CH32X035运放OPA和比较器CMP的应用 一、关于CH32X035介绍CH32X035内置USB和PDPHY,20KBRAM,62KBFLASH,支持USBHost主机和USBDevice设备功能、USBPD及Type-C快充功能,内置可编程协议I/O控制器,提供了OPA运放、CMP电压比较器、USART串口、I2C、SPI、定时器、12位ADC、Touchkey......
  • COMP3506数据结构与算法
    AssignmentOne–15%AlgorithmsandDataStructures–COMP3506/7505–Semester2,2023Due:3pmonFridaySeptember1st(week6)SummaryThemainobjectiveofthisassignmentistogetyourhandsdirtywithsomesimpledatastructuresandalgorithmstosolveb......
  • 35.PT(percona-toolkit)常用功能
    percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql任务和系统任务,这些任务包括:检查master和slave数据的一致性有效地对记录进行归档查找重复的索引对服务器信息进行汇总临时暂停......