news 2026/9/5 2:23:19

第二学期——数组、二分查找

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第二学期——数组、二分查找
  1. 数据结构与数组基础(概念篇)

栈、队列、树等。
· 数组(Array):
· 特点:存储在连续内存空间,通过索引(下标)访问,时间复杂度 O(1)。
· 优缺点:查找快,但插入和删除慢(需移动大量元素),且大小通常固定(静态数组)。
· 在Java/Python中:Java的ArrayList、Python的list是动态数组,可扩容。


  1. 二分查找法(LeetCode 704 经典题)

核心前提:数组必须有序(通常升序)。

算法思想:

· 定义左右指针left、right,取中间mid。
· 比较nums[mid]与target:
· 相等 → 返回mid
· target更大 → 缩小左边界 left = mid + 1
· target更小 → 缩小右边界 right = mid - 1
· 循环结束未找到 → 返回 -1

时间复杂度:O(log n)(每次排除一半数据)
空间复杂度:O(1)(迭代法)


  1. 代码模板(背熟)
defsearch(nums,target):left,right=0,len(nums)-1whileleft<=right:# 注意是 <=mid=(left+right)//2ifnums[mid]==target:returnmidelifnums[mid]<target:left=mid+1else:right=mid-1return-1

易错点提醒:

· 循环条件用 <= 还是 <?推荐 <=,这样区间是闭区间 [left, right],逻辑更统一。
· 防止 left+right 溢出:可用 mid = left + (right - left) // 2(但Python整数无上限,此写法更通用)。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/5 2:16:49

OpenCode Go:新一代 AI 编程助手的实战指南

1. 引言随着 AI 编程工具的快速发展&#xff0c;开发者对代码生成、自动补全和智能重构的需求越来越高。OpenCode Go 作为一款新兴的 AI 编程助手&#xff0c;凭借其强大的代码理解能力和灵活的配置方式&#xff0c;正在受到越来越多开发者的关注。本文将从安装配置、核心功能到…

作者头像 李华
网站建设 2026/9/5 2:15:55

涅槃乐队风格翻唱:从录音到母带的完整音乐制作技术解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/5 2:15:49

结构化与隔离:构建健壮数据处理管道的核心工程实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/5 2:15:40

Flutter OHOS 渲染引擎与UI相关问题

渲染引擎切换指导 PlatformView 同层渲染方案适配切换指导 flutter inappwebview 设置高度后网页内容被拉伸 问题分析&#xff1a;目前 OS 原生 web 画布限制范围是在 2400 以下&#xff0c;超过 2400 的高度原生 web 无法加载 解决方案&#xff1a;将 px 类型的参数转换为 …

作者头像 李华
网站建设 2026/9/5 2:15:37

AI网关实战:从模型路由到Agent协作的统一接入层

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/5 2:14:40

AI编程工作流从零搭建:Cursor+n8n+Dify实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华