type
status
date
slug
summary
tags
category
icon
password
Property
Jul 19, 2023 05:34 AM
LeetCode-034. 在排序数组中查找元素的第⼀个和最后⼀个位置

🤔 看似o(n)其实可以偷点懒一次o(n/2)双指针梭哈,当然了,o(n)==o(n/2)

  1. 问题?
    1. 给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。
      如果数组中不存在目标值 target,返回 [-1, -1]。
      你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。
  1. 解答:
看似o(n)其实可以偷点懒一次o(n/2)双指针梭哈先界定边界,将边界影响的结果集先直接枚举
(1)暴力解法:
notion image
3.优化思路:
在边界内直接双指针,但是不是全量,只要每一次匹配到数据都需要扫描一下结果集,如果结果集已经完事了,直接return
就是这么简单,暴力搜索的改良版本
结果:
notion image
 
致谢:
💡
有关本题的双指针的问题,欢迎您在底部评论区留言,一起交流~
 
 
相关文章
计算机视觉(一):深度学习的人脸应用
Lazy loaded image
计算机视觉(二):特征向量计算
Lazy loaded image
计算机视觉(三):人脸识别之特征提取
Lazy loaded image
Flowable(一):Java知识学习
Lazy loaded image
Flowable(二):数据库篇
Lazy loaded image
Flowable(三):Liquibase模式管理
Lazy loaded image
JDK-Tips(一):关于Lambda的巧妙使用LeetCode刷题日记(2):今日刷题-基础数组双指针-704
Loading...
fntp
fntp
多一点兴趣,少一点功利
最新发布
JUC核心篇(七):线程池底层原理
2025-2-26
JUC核心篇(六):阻塞队列
2025-2-24
JUC核心篇(四):CAS与AQS
2025-2-22
JUC技术篇(六):Volatile关键字
2025-2-21
JUC技术篇(五):Synchronized锁
2025-2-21
JUC核心篇(三):LockSupport与线程阻塞
2025-2-21
公告
📝 博客只为了记录我的学习生涯
😎 我的学习目标是成为一名极客
🤖 我热爱开源当然我也拥抱开源
💌 我期待能收到你的Email留言
📧 我的邮箱:stickpoint@163.com
欢迎交流~