力扣35.搜索插入位置
解题思路
暴力:先特殊考虑两个数组边界插入的情况,再遍历数组查找对应的位置即可
二分法:根据减而治之的思想,用while(left<right)的循环,在退出循环时left=right
//暴力
int searchInsert(int* nums, int numsSize, int target){int i=0;if(target>nums[numsSize-1])return numsSize;else if(target<nums[0])return 0;else for(i=0;i<numsSize;i++){if(target==nums[i])return i;else if(target>nums[i]&&target<nums[i+1])return i+1; }return 0;
}//二分查找
int searchInsert(int* nums, int numsSize, int target){int i=0;if(target>nums[numsSize-1])return numsSize;int left=0;int right=numsSize-1;while(left<right){int mid=left+(right-left)/2;if(nums[mid]>=target){right=mid;}else {left=mid+1;}}return left;
}
力扣35.搜索插入位置相关推荐
- 力扣35. 搜索插入位置python实现
35. 搜索插入位置 一.问题描述 二.算法思想 题目中的数组是排好序的,从头开始遍历,当发现列表中元素的值与target相等时返回该元素在列表中的位置i,否则继续查找,当发现列表中的元素比tar ...
- 导图整理数组1: 总结了二分查找的通用模板写法, 彻底解决几个易混淆问题, 力扣35:搜索插入位置
此专栏文章是对力扣上算法题目各种方法的总结和归纳, 整理出最重要的思路和知识重点并以思维导图形式呈现, 当然也会加上我对导图的详解. 目的是为了更方便快捷的记忆和回忆算法重点(不用每次都重复看题解), ...
- 力扣35. 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 请必须使用时间复杂度为 O(log n) 的算法. 二分搜索法 class S ...
- #力扣 LeetCode35. 搜索插入位置 #在所有 Java 提交中击败了 100.00% 的用户 @FDDLC
题目描述: 35. 搜索插入位置 - 力扣(LeetCode) (leetcode-cn.com) Java代码: class Solution { //已有序:在数组中找到目标值,并返回其索引:如果 ...
- 力扣T35. 搜索插入位置 C
来源:力扣 题目描述: 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 请必须使用时间复杂度为 O(log n) 的算法. 简 ...
- LeetCode (二分小专题)33搜索旋转排序数组34在排序数组中查找元素的第一个和最后一个位置35搜索插入位置
前言 国庆前最后一次打卡,国庆后继续开启,公众号bigsai回复进群欢迎加入打卡,如有帮助记得点赞收藏. 近期打卡记录: LeetCode 32最长有效括号(困难) (本周) LeetCode 30串 ...
- LeetCode-二分查找-35. 搜索插入位置
35. 搜索插入位置 思路:二分查找 class Solution {public:int searchInsert(vector<int>& nums, int target) ...
- LeetCode-数组-35. 搜索插入位置
描述 35. 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 请必须使用时间复杂度为 O(log n) 的算法. ...
- LeetCode Algorithm 35. 搜索插入位置
35. 搜索插入位置 Ideas 题目中给的提示已经很清楚了,要求时间复杂度是O(log n),这不是指着鼻子跟我说:给老子用二分查找嘛! Code Python def searchInsert(s ...
最新文章
- SFB 项目经验-65-使用域管理员安装不了Exchange 2010 SP3 CU21
- JXLS导出Excel(模板导出)
- 网络编程学习笔记(recvfrom很奇怪的一个地方)
- java真的是值传递么?
- 世界上最遥远的距离(泰戈尔)
- OBD技术速成——J1850协议概述
- SAP Cloud for Customer根据Accouunt自动带出Sales Unit的配置
- html用变量存储颜色信息,我如何使用间隔循环修改HTML Canvas颜色?
- 数据太少怎么办?试试自监督学习,CV训练新利器,fast.ai新教程,LeCun点评
- 杂项:Java un
- SpringMvc表单使用
- Linux用户登出之后保持后台进程(nohup)
- C#开源爬虫NCrawler源代码解读以及将其移植到python3.2(3)
- 【文本分类】采用同义词的改进TF-IDF权重的文本分类
- 朴素贝叶斯分类算法(Naive Bayes)
- python对行为进行推理_一道有意思推理题,用python来解答
- 呵护流量尖峰时刻,我们是互联网的“守夜人”
- 华为-IGP协议-ospf精简篇(带实验验证)
- COSOSWAP官网2.0升级——线上圆桌会议重点回顾
- 除了支付宝,微信也能查询账单了!再也不担心钱花哪去了!
热门文章
- linux合并第一列相同的行,linux – 合并重复的行并在最后添加“N / A...
- ok计数器使用教程_玩转透视表!Excel教程 Excel入门 Excel技巧 Excel快捷键 Excel学习!...
- 华容道6×6图解_解放重卡促销盘点,四款6×4牵引车最低只要27.2万元
- ios 内联函数 inline ---分解LFLiveKit
- 版本控制系统(译文) 2 - 基础
- d3 svg path添加文本_数据可视化——D3展现数据最炫丽的一面
- 电脑怎么结束进程_结束员工电脑进程/活动窗口的软件
- Java虚拟机专题之字节码指令(读书笔记)
- Java 并发编程 基础
- (39)FPGA按键设计(第8天)