在难度上,第 35 题简单,33、34 是中等难度,我们先看简单的。
题目一
「第 35 题:搜索插入位置」
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。...代码实现
看二分法,通常都会纠结于比较完中点值后,对之后左右边界如何划分,究竟取 mid、mid-1 还是 mid+1 作为新的坐标,这个要具体来分析。...( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。
搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。...比如示例 1 ,在列表中找目标 0,如下图:
?
我们先取中点,值为 7,此时左边正常排序,右边顺序有变。此时,判断目标不在正常排序的左边,所以将边界调整,直接取右半部分。...题目三
「第 34 题:在排序数组中查找元素的第一个和最后一个位置」
给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。