leetcode 35. 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
你可以假设数组中无重复元素。
示例 1:
输入: [1,3,5,6], 5
输出: 2
示例 2:
输入: [1,3,5,6], 2
输出: 1
示例 3:
输入: [1,3,5,6], 7
输出: 4
示例 4:
输入: [1,3,5,6], 0
输出: 0
看到这道题,我第一反应使用二分查找法...
package com.letcode;public class SearchInsertPosition {public static void main(String[] args) {int[] nums = {1, 3, 5, 6};int p = searchInsert(nums, 7);System.out.println(p);}public static int searchInsert(int[] nums, int target){int left = 0; // 数组左边的位置int right = nums.length-1; // 数组下标最右边的位置int mid = 0;// 当left > right,才会跳出循环while(left <= right){mid = (left+right)/2;if(target > nums[mid]){// 右边部分left = mid+1; // mid这个位置的值不等于target,所以要去除mid这个位置}else if(target < nums[mid]){right = mid-1; // mid这个位置的值不等于target,所以要去除mid这个位置}else{return mid; // 这是targrt == nums[mid],因此mid就是target的位置}}// if(left < right){
// return right;
// }else{
// return left;
// }// 程序运行到这里的条件是 left > rightreturn left;}
}
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/search-insert-position
leetcode 35. 搜索插入位置相关推荐
- leetcode 35. 搜索插入位置(二分法搜索失败的情况)
35. 搜索插入位置 思路:二分查找 模板: 如果查找成功,返回target在nums中的下标 //二分查找模板 //nums[0..n-1]为有序数组,target为目标 int left=0; i ...
- LeetCode 35. 搜索插入位置(二分查找)
文章目录 1. 题目信息 2. 解题 2.1 暴力遍历 2.2 二分查找 1. 题目信息 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插 ...
- LeetCode 35.搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 1: 输入: [1,3,5,6], 5 输 ...
- Leetcode 35.搜索插入位置 二分
题目链接 思路: 是常规的二分法, 需要注意的是,当数字不存在的时候,需要返回插入该数进序列并保持有序的位置,即返回的是最后一个小于查找数target的位置.二分查找最后结束的位置,即退出循环时的左边 ...
- leetcode 35. 搜索插入位置 思考分析
目录 题目 暴力 二分迭代 二分递归 题目 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 ...
- LeetCode (二分小专题)33搜索旋转排序数组34在排序数组中查找元素的第一个和最后一个位置35搜索插入位置
前言 国庆前最后一次打卡,国庆后继续开启,公众号bigsai回复进群欢迎加入打卡,如有帮助记得点赞收藏. 近期打卡记录: LeetCode 32最长有效括号(困难) (本周) LeetCode 30串 ...
- 【LeetCode】35. 搜索插入位置---JavaScript解法
[LeetCode]35. 搜索插入位置-JavaScript解法 原题链接:https://leetcode-cn.com/problems/search-insert-position/ /*** ...
- LeetCode Algorithm 35. 搜索插入位置
35. 搜索插入位置 Ideas 题目中给的提示已经很清楚了,要求时间复杂度是O(log n),这不是指着鼻子跟我说:给老子用二分查找嘛! Code Python def searchInsert(s ...
- 力扣35. 搜索插入位置python实现
35. 搜索插入位置 一.问题描述 二.算法思想 题目中的数组是排好序的,从头开始遍历,当发现列表中元素的值与target相等时返回该元素在列表中的位置i,否则继续查找,当发现列表中的元素比tar ...
最新文章
- android Camera照相机技术(二)定制拍照
- 一文了解物联网主控芯片架构之争
- 我的2013-一个dota半职业玩家向码农的转变路
- boost::hana::less_equal用法的测试程序
- Java扑克牌(洗牌Collections.shuffle)
- 深度学习进行目标识别的资源列表
- Kubernetes学习之路目录
- 2008 Asia Harbin Regional Contest Online Turn the corner (三分)
- 支付宝 RSA和RSA2签名算法区别
- Raki的读paper小记:SUBSPACE REGULARIZERS FOR FEW-SHOT CLASS INCREMENTAL LEARNING
- 60款mac超酷炫动态苹果免费屏保壁纸
- 黑客使用浏览器中的浏览器技术窃取Steam凭证
- 年前辞职,年后找工作
- 不同RAID硬盘利用率参考
- GDUT - 专题学习1 I - 滑动窗口
- Thinkpad T450 安装固态硬盘及内存条
- P2161 [SHOI2009]会场预约[线段树/树状数组+二分/STL]
- 共享打印机显示计算机权限,w10系统共享打印机怎么开权限_w10系统共享打印机访问权限如何获取...
- 诛仙3el服务器位置,【诛仙3风吟】虚拟机镜像一键服务端+配套客户端+青萝+EL编辑器+GM工具+启动说明...
- 第八课.TPAMI2021年多篇GNN相关工作