Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【优选算法】专题三:二分查找 --- 34. 在排序数组中查找元素的第一个和最后一个位置

【优选算法】专题三:二分查找 --- 34. 在排序数组中查找元素的第一个和最后一个位置

作者头像
xxxflower
发布于 2024-01-06 02:00:19
发布于 2024-01-06 02:00:19
11600
代码可运行
举报
文章被收录于专栏:《数据结构》《数据结构》
运行总次数:0
代码可运行

从今天开始,xxxflower 带着小伙伴们一起学习算法 ~ 今天我们要写的题目是: 34. 在排序数组中查找元素的第一个和最后一个位置 以下是题目的详细解析:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Solution {
    public int[] searchRange(int[] nums, int target) {
        // 判断数组为空的情况下返回-1,-1
        int[] ret = new int[2];
        ret[0] = ret[1] = -1;
        if (nums.length == 0) return ret;

        // 判断左端点
        int left = 0,right = nums.length -1;
        while(left < right){
            int mid = left+(right-left)/2;
            if(nums[mid] < target) left = mid + 1;
            else right = mid;
        }
        // 判断是否有结果
        if(nums[left] != target) return ret;
        else ret[0] = left;

        // 判断右端点
        left = 0;right = nums.length -1 ;
        while(left < right){
            int mid = left+(right-left+1)/2;
            if(nums[mid] <= target) left = mid;
            else right = mid -1;
        }

        ret[1] = left;

        return ret;
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-01-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
升职却不加薪,腾讯到底想干啥。。。
新粉请关注我的公众号 最近腾讯改革了晋升和薪资,具体来说,未来腾讯的薪资调整统一到每年7月份年度考核的时候,升职将不会导致薪水的改变。 据说,此举是公司仁科晋升代表的能力提升和更高的职责要求,但是同时也要求用武功立战功,将能力转化成为业绩贡献。 这话听起来很绕口,我不妨翻译一下。晋升是对个人的能力的认可,并给更高的职责要求。 但是呢?你这个人到底行不行,值不值得配得上更高的薪水,这个事情,晋升的时候公司是不知道的,只有晋升以后,年度业绩考核,是骡子是马拉出来溜溜了,公司才能判断是不是要给你更多的钱。 这样一
用户1564362
2022/06/14
7780
升职却不加薪,腾讯到底想干啥。。。
十年程序员老兵告诉你,2018年程序员如何发展
本文根据作者亲身经验、体会和思考,为工作年限在10年之内的程序员,尤其是职场新人,提供了一些建议。
技术zhai
2018/05/23
8662
离职被老板加薪挽留到底要不要留下
大多数情况下,提出离职申请都是经过了一番深思熟虑之后的结果。当工资和付出不成正比,或是想进入职业深井想换份新工作,种种情况都可能会选择辞职。
程序媛淼淼
2022/09/01
7300
如何跟老板开口要加薪?
在当下的大环境下,谁都希望收入多一点,有安全感,人之常情。如果你打算要求加薪,尤其是女生,要提加薪,一定要大大方方的,不要扭捏。
闰土大叔
2019/05/05
4640
如何跟老板开口要加薪?
年轻人,AI不想给你加薪升职
郭一璞 安妮 发自 凹非寺 量子位 出品 | 公众号 QbitAI “抱歉,你能力不够,不能涨薪。” 从一个机器人嘴里听到这句话,你会是什么感觉?当你的职场前途得看一个人工智能脸色时,你能心平气和的接
量子位
2018/07/19
4370
老板思维 & 跟对老板——高科技人才在跨国大公司的生存之道(五)
在大公司体制里面混,很重要的是要有老板的思维。什么叫老板思维?第一个,我们要先定义什么叫老板。在自己经营的公司,你就是拥有者,那你就是老板,你说了算。但是在超大公司里面谁叫老板?像我们都是职业经理人,将来也都是职业经理人,不管你段数再高。真正老板是比尔·盖茨,所以老板里面你就需要分层。
叶锦鲤
2022/05/27
5430
老板思维 & 跟对老板——高科技人才在跨国大公司的生存之道(五)
面试之你该为老板选什么样的人
本来的话,是觉得自己不够资历写这样的文章,不过总有一个过程嘛,自己也曾经作为技术面试官面试过一部分人,有一些自己的观点,可能会给还在面试或者面试官一些有益的启示吧。
RobinsonZhang
2018/08/28
4270
新梦想干货——每个软件测试员最怕被问的问题:“测得怎么样了?”
有的人曾抱怨过开发很糟糕,但我们没办法要求开发在会写代码的同时还要把代码写好,没有过多的bug,因为这就是我们的工作;
新梦想IT职业教育
2019/10/12
6480
新梦想干货——每个软件测试员最怕被问的问题:“测得怎么样了?”
经常被老板 PUA,怎么办?
PUA,起源美国,全称“Pick-up Artist”,译为“搭讪艺术家”。它的产生背景是20世纪60年代,美国社会发生剧烈变化,很多反叛的年轻人离开家乡到大城市生活,然而他们却没有结识异性的传统渠道,也缺乏发展恋爱关系的社交技巧。
微观技术
2022/12/29
9720
通过阿里云宕机这件事,来看国内程序员的畸形职场文化
阿里在变更这块有三板斧,可监控、可灰度,可回滚。另外他们内部非常喜欢用这类简短的语句传递意图。
用户5166556
2023/11/20
4970
通过阿里云宕机这件事,来看国内程序员的畸形职场文化
只要你努力,就可以晋升?醒醒吧,想多了
在近十年的管理经历中,无论在哪家公司,或者这家公司的企业文化是什么,我一直都很重视绩效面谈。因为我很明白,一次好的绩效面谈能让下属对你敞开心扉,并在一番推心置腹之后,愉快离开,但相反,会增加他们对你的排斥和抵触,最终带着怨气离开,影响下半年工作的推进。
吃草的罗汉
2020/07/02
4750
只要你努力,就可以晋升?醒醒吧,想多了
面试者说-第二篇
面试者虽然经常被运气所玩弄,但这是不可避免的事情,我们能做的,就是当运气眷顾你时,完美的把握住这次运气。
用户1907613
2021/05/11
3920
个人发展战略(二)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
chenchenchen
2019/11/26
4700
干货 | 为什么自己设计的嵌入式系统不如工业级产品稳定?
国内很多企业非常关注产品功能,而对稳定性关注甚少,常常产品功能很炫可是稳定性往往差强人意。今天我们来聊聊产品稳定性。
AI 电堂
2020/08/04
7450
干货 | 为什么自己设计的嵌入式系统不如工业级产品稳定?
作为大龄开发人员,敢问路在何方?
相对同时刚出校门同学从事其它行业而言优厚的薪水,以及不断学习更新的专业知识不仅仅让你感到生活的充实,更满足了你那不让外人知的虚荣心。在刚出 校门的几年中,你经常回头看看被你落在后面的同学们,在内心怜悯他们的同时,你也会对自已天天加班的努力工作感到心里平衡:"有付出才会有回报"这句话在 那几年中你说的最多,不管是对自已的朋友们还是自已的爱人。第二句最常说的话是对公司的领导:"不行我就走人!",实际上你也真的走过几回。对了,在这几 年中,因为你的经济条件不错,你开始买房、开始谈恋爱、结婚、开始有了自已的小孩。有时候你会对自已说再过两年就去买车。当然其中可能有许多大件是需要分 期付款的,但你对前途充满了信心,你确信认为这种日子会永远的持续下去,即使不是变得更好的话。
技术zhai
2018/05/22
6123
你该为老板选择什么样的人(2)
怎样的一个面试过程会比较愉快呢?一般的面试者或者面试官怎样操作得到一个比较满意、综合的面试过程。
RobinsonZhang
2018/08/28
3390
程序员跳槽指南——怎么跳槽薪资翻倍?1、你为什么跳槽?2、如何选择目标公司?3、如何准备跳槽?4、跳槽过程中应该避免哪些坑?海投简历5、如何准备面试?6、谈薪资这件事要有技巧7、选择正确的方式跟现东家
1、你为什么跳槽? 首先是因为自己的职业生涯遇到瓶颈了。那么什么情况表明你遇到瓶颈了呢?我觉得有几点,你可以先简单评估一下。 你已经有六个月清楚知道自己没有成长。 你的上级已经有好几年没晋升过了,这意味着你这个部门、这个企业、这个行业已经没有发展前景了。 你的数据很久没有增长了,作为一个职业人,你就要找一份能直接或者间接作用于某个数据成长的工作。 你的老板对你无动于衷、不培育、不提拔、不批评、不涨薪、不开除。 当然还有一些其他原因可能促使你跳槽: 公司经营不下去了。你所在的公司可能因为产品方向没有选好,或者
美的让人心动
2018/06/14
9660
管理者必须知道的:你真的会奖励你的团队吗?
前段时间写过一篇文章《如何打造积极高效的工作团队?》,有粉丝来信说,对于里面提到的“义”不清楚怎么落地执行,希望能得到更深入的讲解。
张树臣
2018/07/24
8530
管理者必须知道的:你真的会奖励你的团队吗?
真实经历,互联网大厂升职加薪那些事
我的第一份工作,在三星电子北京通信研究院。11年8月份,也就是研二暑假开始在这里实习,12年3月底硕士毕业,正式入职,月薪9980元。
纯洁的微笑
2018/09/30
1.3K0
真实经历,互联网大厂升职加薪那些事
优秀员工应该具备的11个特质
这是一篇写给自己,也是写给和我有一样迷茫的人,希望读完以后能对你有些帮助,少走几年弯路。
机智的程序员小熊
2020/07/24
1.4K0
优秀员工应该具备的11个特质
推荐阅读
相关推荐
升职却不加薪,腾讯到底想干啥。。。
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验