leetcode数组找最大数(leetcode排序中查找元素)

技术LeetCode如何在排序数组中查找元素的第一个和最后一个位置这篇文章主要介绍LeetCode如何在排序数组中查找元素的第一个和最后一个位置,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 一

这篇文章主要介绍LeetCode如何在排序数组中查找元素的第一个和最后一个位置,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一,在排序数组中查找元素的第一个和最后一个位置

1,问题描述

给定一个按照升序排列的整数数组nums,和一个目标值目标。找出给定目标值在数组中的开始位置和结束位置。

如果数组中不存在目标值目标,返回[-1, -1]。

2,示例描述

示例1:

输入:nums=[5,7,7,8,8,10],target=8

输出:[3,4]

示例2:

输入:nums=[5,7,7,8,8,10],target=6

输出:[-1,-1]

示例3:

输入:nums=[],target=0

输出:[-1,-1]

提示:

0=nums.length=105

-109=nums[i]=109

nums是一个非递减数组

-109=目标=109

3,题解思路

本题基于我们最熟悉的集合LinkedHashMap键值对集合来做

4,题解程序

导入Java。乌提尔。linkedhashmap

导入Java。乌提尔。列表;

导入Java。乌提尔。地图;

导入Java。乌提尔。小溪。收藏家;

公共类SearchRanageTest2 {

公共静态void main(String[]参数){ 0

int[] nums={3,3,3 };

int target=3;

int[]搜索范围=搜索范围(nums,target);

for(int num : SearchRange){ 0

系统。出去。打印(数字' \ t ');

}

}

公共静态int[]搜索范围(int[]nums,int target){ 0

if(nums==null | | nums。长度==0){ 0

返回新的int[]{-1,-1 };

}

MapInteger,整数映射=new LinkedHashMap(nums。长度);

for(int I=0;I nums . LengTii){ 0

map.put(i,nums[I]);

}

列表地图。整数收集=地图。entrySet()。流()。筛选器(x - x.getValue()==目标)。收集(收集者。to list());

如果(收集。size()==0){ 0

返回新的int[]{-1,-1 };

}

如果(收集。size()==1){ 0

返回新的int[]{collect.get(0).getKey(),collect.get(0).getKeY()};

}

如果(收集。大小)(2){ 0

返回新的int[]{collect.get(0).getKey(),collect.get(collect.size() - 1).getKeY()};

}

int[]结果=new int[collect。size()];

(同Internationalorganizations)国际组织索引=0;

(地图EntryInteger,整数条目: collect){ 0

结果[索引]=条目。GetKey();

}

返回结果;

}

}以上是“LeetCode如何在排序数组中查找元素的第一个和最后一个位置"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/147025.html

(0)

相关推荐

  • mysql如何用rpm安装

    技术mysql如何用rpm安装这篇文章给大家分享的是有关mysql如何用rpm安装的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。RedHat 下自带的mysql rpm包为mysql-3.23

    攻略 2021年11月6日
  • mysql5.7无法开启二进制日志的示例分析

    技术mysql5.7无法开启二进制日志的示例分析小编给大家分享一下mysql5.7无法开启二进制日志的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起

    攻略 2021年11月6日
  • 速度单位换算,路程,速度,时间的关系式是什么

    技术速度单位换算,路程,速度,时间的关系式是什么路程速度单位换算,速度,时间的关系式是速度=路程/时间。科学上用速度来表示物体运动的快慢。速度在数值上等于单位时间内通过的路程。速度的计算公式:V=S/t。速度的单位是m/

    生活 2021年10月30日
  • CodeChef Weird Product

    技术CodeChef Weird Product CodeChef Weird ProductCodeChef Weird Product
    ? 设 \(p_k=\sum\limits_{i=1}^kA

    礼包 2021年12月16日
  • R语言中的MongoDB的示例分析

    技术R语言中的MongoDB的示例分析今天就跟大家聊聊有关R语言中的MongoDB的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。R利剑MongeDB,分

    攻略 2021年11月23日
  • java环形队列如何控制循环时间(java并发如何判断阻塞队列已满)

    技术Java阻塞队列BlockingQueue怎么实现这篇文章主要讲解了“Java阻塞队列BlockingQueue怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“

    攻略 2021年12月21日