34. 在排序数组中查找元素的第一个和最后一个位置
2021/5/15 10:25:19
本文主要是介绍34. 在排序数组中查找元素的第一个和最后一个位置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 package leetcode; 2 3 public class demo_34 { 4 public int[] searchRange(int[] nums, int target) { 5 int[] s= {-1,-1}; 6 if(nums.length==0) {return s;} 7 int right=nums.length-1; 8 int left=0; 9 int mid=(right+left)/2; 10 //通过二分法来查找target的位置 11 while(left<=right) { 12 mid=(left+right)/2; 13 if(target>nums[mid]) { 14 left=mid+1; 15 } 16 if(target<nums[mid]) { 17 right=mid-1; 18 } 19 if(target==nums[mid]) { 20 left=mid; 21 right=mid; 22 while(left>=0&&nums[left]==target) {left=left-1;} 23 s[0]=left+1; 24 while(right<nums.length&&nums[right]==target) {right=right+1;} 25 s[1]=right-1; 26 break; 27 } 28 } 29 for(int i:s) { 30 System.out.print(i+" "); 31 } 32 return s; 33 } 34 public static void main(String[] args) { 35 // TODO Auto-generated method stub 36 demo_34 d34=new demo_34(); 37 int[] nums= {5,7,7,8,8,10}; 38 d34.searchRange(nums, 8); 39 } 40 41 }
这篇关于34. 在排序数组中查找元素的第一个和最后一个位置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-06小米11i印度快充版ROM合集:极致体验,超越期待
- 2024-10-06【ROM下载】小米11i 5G 印度版系统, 疾速跃迁,定义新速度
- 2024-10-06【ROM下载】小米 11 青春活力版,青春无极限,活力全开
- 2024-10-05小米13T Pro系统合集:性能与摄影的极致融合,值得你升级的系统ROM
- 2024-10-01基于Python+Vue开发的医院门诊预约挂号系统
- 2024-10-01基于Python+Vue开发的旅游景区管理系统
- 2024-10-01RestfulAPI入门指南:打造简单易懂的API接口
- 2024-10-01初学者指南:了解和使用Server Action
- 2024-10-01Server Component入门指南:搭建与配置详解
- 2024-10-01React 中使用 useRequest 实现数据请求