在已排序数组中查找元素的第一个和最后一个位置
的有关信息介绍如下:题目:给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。
约束:时间复杂度为 O(logn) 。
本篇经验将分享在Java中如何通过二分查找对上述题目进行求解。
编写一个函数,通过二分查找,获取一个指定值在有序数组中第一次出现的位置,如果没有找到该元素,则返回 -1。
编写一个函数,通过二分查找,获取一个指定值在有序数组中最后出现的位置,如果没有找到该元素,则返回 -1。
编写一个函数,通过调用上述两个二分查找的方法,获取一个元素在排序数组中第一个和最后一个出现的位置。
编写测试方法。
运行测试方法,观察控制台输出,符合预期,本地测试通过。
平台提交算法,测试通过。