leetcode简单题数组和技巧题

ops/2024/12/18 9:37:21/

数组是一种基础数据结构,可以用来处理常见的排序和二分搜索问题,典型的处理技巧包括对撞指针、滑动窗口等。 面试中的算法问题,有很多并不需要复杂的数据结构支撑,就是用数组,就能考察出很多东西。

题型1:原地算法

在不引入额外空间的情况下,修改数组

283. 移动零 - 力扣(LeetCode)

27. 移除元素 - 力扣(LeetCode)

26. 删除有序数组中的重复项 - 力扣(LeetCode)

80. 删除有序数组中的重复项 II - 力扣(LeetCode)

75. 颜色分类 - 力扣(LeetCode)

31. 下一个排列 - 力扣(LeetCode)

题型2:双指针——对撞指针

167. 两数之和 II - 输入有序数组 - 力扣(LeetCode)

15. 三数之和 - 力扣(LeetCode)

18. 四数之和 - 力扣(LeetCode)

125. 验证回文串 - 力扣(LeetCode)

11. 盛最多水的容器 - 力扣(LeetCode)

题型3:双指针——快慢指针

209. 长度最小的子数组 - 力扣(LeetCode)

LCR 119. 最长连续序列 - 力扣(LeetCode)

88. 合并两个有序数组 - 力扣(LeetCode)

题型4:排序

912. 排序数组 - 力扣(LeetCode)

排序中地快速排序,归并排序,堆排序需要重点掌握。

215. 数组中的第K个最大元素 - 力扣(LeetCode)

347. 前 K 个高频元素 - 力扣(LeetCode)

题型5:二分查找

35. 搜索插入位置 - 力扣(LeetCode)

33. 搜索旋转排序数组 - 力扣(LeetCode)

34. 在排序数组中查找元素的第一个和最后一个位置 - 力扣(LeetCode)

153. 寻找旋转排序数组中的最小值 - 力扣(LeetCode)

字符串篇

题型1:字符串反转类:

344. 反转字符串 - 力扣(LeetCode)

541. 反转字符串 II - 力扣(LeetCode)

557. 反转字符串中的单词 III - 力扣(LeetCode)

7. 整数反转 - 力扣(LeetCode)

151. 反转字符串中的单词 - 力扣(LeetCode)

题型2:回文串类:

125. 验证回文串 - 力扣(LeetCode)

647. 回文子串 - 力扣(LeetCode)

5. 最长回文子串 - 力扣(LeetCode)

516. 最长回文子序列 - 力扣(LeetCode)

题型3:字符操作类:

415. 字符串相加 - 力扣(LeetCode)

43. 字符串相乘 - 力扣(LeetCode)

387. 字符串中的第一个唯一字符 - 力扣(LeetCode)

242. 有效的字母异位词 - 力扣(LeetCode)

434. 字符串中的单词数 - 力扣(LeetCode)

6. Z 字形变换 - 力扣(LeetCode)

题型4:子串匹配类:

28. 找出字符串中第一个匹配项的下标 - 力扣(LeetCode)

14. 最长公共前缀 - 力扣(LeetCode)

459. 重复的子字符串 - 力扣(LeetCode)

题型5:括号匹配类:

20. 有效的括号 - 力扣(LeetCode)

1021. 删除最外层的括号 - 力扣(LeetCode)

32. 最长有效括号 - 力扣(LeetCode)


http://www.ppmy.cn/ops/142871.html

相关文章

6.1 初探MapReduce

MapReduce是一种分布式计算框架,用于处理大规模数据集。其核心思想是“分而治之”,通过Map阶段将任务分解为多个简单任务并行处理,然后在Reduce阶段汇总结果。MapReduce编程模型包括Map和Reduce两个阶段,数据来源和结果存储通常在…

golang 判断一个点是否在一个多边形内

我有一需求为:判断一个点(经纬度范围)是否在一个多边形范围内(多个经纬度点) 这里我借助几何库( github.com/paulmach/orb)来处理地理空间数据 可以通过在线获取经纬度来确认代码正确性 packa…

开源 AI 智能名片微信小程序在企业微信生态中的创新应用与价值拓展

摘要:本论文聚焦于企业微信这一重要的企业通信与办公工具,深入探讨开源 AI 智能名片微信小程序如何与之深度融合并发挥独特作用。分析企业微信的功能特性以及在企业内外连接方面的重要意义,阐述开源 AI 智能名片微信小程序在增强企业社交互动…

国际网络专线是什么?有什么优势?

国际网络专线作为一种独立的网络连接方式,通过卫星或海底光缆等物理链路,将全球不同国家和地区的网络直接互联,为企业提供了可靠的通信渠道。本文将详细探讨国际网络专线的优势以及其广泛的应用场景。 国际网络专线的优势解析 1. 专属连接&am…

利用 Flink 构建实时数据写入流水线:从 Paimon 到 Iceberg

在现代数据架构中,实时数据处理与可扩展的数据存储至关重要。Apache Flink 作为低延迟、高吞吐的流处理框架,可与 Paimon 和 Iceberg 等数据湖表格式无缝结合,从而构建批流一体、弹性扩展的实时数据分析平台。本文将结合命令示例与参数对比&a…

简单了解一下 Go 语言的构建约束?

​构建约束是一种在 Go 语言中控制源文件编译条件的方法,它可以让您指定某些文件只在特定的操作系统、架构、编译器或 Go 版本下编译,而在其他环境中自动忽略。这样可以方便您针对不同的平台或场景编写不同的代码,实现条件编译的功能。 构建…

【学习记录】浏览器指纹相关学习记录(指纹介绍、获取指纹、修改指纹、随机指纹保护隐私等)

用途 不需要用户登录,可以识别是同一个用户,用于反爬虫广告推送等一类的场景 指纹在线查询地址 http://www.fingerprintbrowser.com/ CreepJS 浏览器指纹在线检测网站:代理IP防关联伪装度查询工具 IP检测大师 相关指纹信息 user-agent[http header…

2024数证杯初赛

计算机取证 请根据计算机检材,回答以下问题:(32个小题,共76分 1.[填空题对计算机镜像进行分析,计算该镜像中ESP分区的SM3值后8位为?(答案格式:大写字母与数字组合,如:D…