- 博客(152)
- 收藏
- 关注
原创 力扣Hot100题目解析:三数之和(排序+双指针详细讲解)
三数之和是典型的排序+双指针题型,核心在于去重和双指针的灵活运用。希望大家多练习,掌握经典的算法思想。
2025-08-12 14:00:13
141
原创 力扣Hot100题目解析:最小覆盖子串(滑动窗口+哈希表详细注释)
滑动窗口结合哈希表是处理字符串区间问题的经典技巧。这类题型要学会窗口的扩展与收缩,以及如何判定窗口状态。文章标签:力扣,Hot100,最小覆盖子串,滑动窗口,哈希表,Java,算法,字符串,面试题。
2025-08-12 13:00:13
222
原创 力扣Hot100题目解析:合并两个有序链表(递归与迭代双解法+Java注释详解)
链表题目常考递归和迭代的思路,建议多练习,加深理解。掌握两种思路,可以灵活应对类似题型。文章标签:力扣,Hot100,合并两个有序链表,链表,递归,迭代,Java,算法,面试题。
2025-08-12 12:00:14
228
原创 力扣Hot100题目解析:无重复字符的最长子串(滑动窗口+Java详细注释)
滑动窗口是解决子串类问题的一大利器。理解窗口的扩展和收缩方式,可以高效解决类似的字符串处理问题。文章标签:力扣,Hot100,无重复字符的最长子串,滑动窗口,Java,算法,字符串,面试题。
2025-08-12 11:00:20
288
原创 LeetCode HOT 100 题目解析:两数之和(哈希表应用详解)
在 LeetCode 的 HOT 100 题目中,“两数之和”是非常经典且入门的一道题。本文将用 Java 语言详细讲解解题思路,适合算法新手学习哈希表的应用。
2025-08-12 09:00:11
266
原创 LeetCode HOT 100题目解析——动态规划:最大子序和(Java详细讲解)
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
2025-08-11 22:00:15
313
原创 LeetCode HOT 100题目解析——滑动窗口:无重复字符的最长子串(Java详细讲解)
给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。
2025-08-11 21:00:23
234
原创 LeetCode HOT 100题目解析——双指针法:盛最多水的容器(Java详细讲解)
给定一个长度为 n 的整数数组 height。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。
2025-08-11 20:00:20
298
原创 LeetCode HOT 100题目解析——哈希表应用:两数之和(Java详细讲解)
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
2025-08-11 19:00:18
304
原创 力扣Hot100题目解析:双指针思想——盛最多水的容器(Java详细讲解)
本题充分体现了双指针思想在数组区间类问题中的高效应用,是面试和刷题中的常见技巧之一。文章标签: 力扣,LeetCode,算法,Java,双指针,盛最多水的容器,数组,hot100。
2025-08-11 18:00:21
159
原创 LeetCode Hot100题目解析:动态规划解决最大子数组和(Java详解)
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
2025-08-11 17:00:18
211
原创 LeetCode Hot100题目解析:双指针合并有序链表(Java详细注释)
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
2025-08-11 16:00:15
118
原创 LeetCode Hot100题目解析:栈结构实现每日温度(Java详细注释)
给定一个整数数组 temperatures ,表示每天的温度。请你返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。如果之后没有更高的温度,答案就用 0 来代替。
2025-08-11 15:00:18
225
原创 LeetCode Hot100题目解析:滑动窗口解决无重复字符的最长子串(Java详细注释)
给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。
2025-08-11 14:00:14
119
原创 力扣Hot100题目解析:哈希表与双指针 —— 两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标。输入:nums = [2, 7, 11, 15], target = 9输出:[0, 1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。
2025-08-11 12:00:15
221
原创 力扣Hot100题目解析:动态规划与数组 —— 最大子序和
给定一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。
2025-08-11 11:00:10
304
原创 力扣Hot100题目解析:栈与字符串处理 —— 有效的括号
给定一个只包括 '(', ')', '{', '}', '[' 和 ']' 的字符串 s ,判断字符串是否有效。输入:s = "()[]{}"输出:true输入:s = "(]"输出:false。
2025-08-11 10:00:14
205
原创 力扣Hot100题目解析:双指针与链表 —— 两数相加
给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序方式存储的,并且每个节点只存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807。
2025-08-11 09:00:14
340
原创 【哈希表&数组】力扣Hot100:1. 两数之和题目解析(Java详解)
两数之和是哈希表应用的典型题,掌握了这种思路后可以解决很多查找配对类的问题。文章标签:力扣,算法,Java,哈希表,数组,面试。
2025-08-10 22:00:14
384
原创 【滑动窗口&哈希表】力扣Hot100:76. 最小覆盖子串题目解析(Java详解)
本题通过滑动窗口+哈希表的经典组合,高效解决了最小覆盖子串问题。掌握这种方法能帮助你应对各种子串匹配和窗口类问题。
2025-08-10 21:00:16
355
原创 【哈希表&链表】力扣Hot100:2. 两数相加题目解析(Java详解)
链表加法模拟题非常考查基础功。掌握虚拟头结点、边界条件处理和进位思想,能帮助你应对更多链表或数字处理相关的题目。
2025-08-10 20:00:12
352
原创 【双指针&排序】力扣Hot100:15. 三数之和题目解析(Java详解)
三数之和是典型的排序+双指针题目,学会了本题可以举一反三解决多数k-sum问题。去重细节和指针移动要特别注意。
2025-08-10 19:00:13
211
原创 【回溯&剪枝】力扣Hot100:39. 组合总和题目解析(Java详解)
回溯法是解决组合类、排列类问题的常用技巧,理解递归和剪枝思想可以帮助你高效解决类似问题。文章标签:力扣,算法,Java,回溯,剪枝,面试,数组,递归。
2025-08-10 18:00:13
242
原创 【栈&双指针】力扣Hot100:20. 有效的括号题目解析(Java详解)
括号匹配问题是面试和算法题常见考点。通过栈结构,可以简单高效地解决,掌握后可以应对各种嵌套结构相关的题目。文章标签:力扣,算法,Java,栈,括号匹配,双指针,面试。
2025-08-10 17:00:11
286
原创 【动态规划&数组】力扣Hot100:53. 最大子数组和题目解析(Java详解)
最大子数组和问题是面试和刷题的常考题型,学会用动态规划思路分析和实现,可以举一反三解决很多类似问题。
2025-08-10 16:00:10
122
原创 【二分查找&贪心】力扣Hot100:875. 爱吃香蕉的珂珂题目解析(Java详解)
本题是典型的二分查找可行性问题,掌握这类题可以帮助解决很多类似的最优解搜索问题。建议大家多多练习!
2025-08-10 15:00:14
315
原创 【哈希表&滑动窗口】力扣Hot100:3. 无重复字符的最长子串题目解析(Java详解)
本题利用滑动窗口和哈希表的结合,有效地解决了查找无重复字符最长子串的问题。这种思路在字符串处理和子数组问题中非常常见,建议多加练习和掌握。
2025-08-10 14:02:38
192
原创 【哈希表+前缀和】LeetCode Hot100题目解析:和为K的子数组数量(Java详细讲解)
本题利用前缀和与哈希表,巧妙实现O(n)的高效解法。适合初学者理解连续区间和与哈希统计思想。希望这篇讲解能帮你彻底搞懂这道高频面试题!文章标签:LeetCode,算法,Java,哈希表,前缀和,数组,面试。
2025-08-10 12:00:15
404
原创 【双指针+滑动窗口】LeetCode Hot100题目解析:无重复字符的最长子串(Java详细讲解)
本题核心是滑动窗口+哈希表。用双指针控制窗口范围,HashSet判断重复。代码简洁,效率高,是经典的面试高频题。希望这篇讲解能帮你彻底搞懂这道题!
2025-08-10 11:02:29
112
原创 LeetCode Hot100题目解析:LRU缓存机制(哈希表+双向链表 Java详解)
运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作:获取数据 get 和写入数据 put。
2025-08-10 10:00:14
407
原创 Java面试突击复习:JVM原理、并发编程、Lambda表达式、Spring框架、HashMap底层实现
*JVM(Java虚拟机)**是Java程序的运行环境,实现了Java的跨平台特性。
2025-08-10 09:21:57
403
原创 力扣hot100题目解析:数组中的第K个最大元素
在这篇文章中,我们将解析力扣hot100中的一道经典题目:数组中的第K个最大元素。这道题的难度为中等,主要考察我们对数组和排序的理解与应用。通过以上代码,我们可以高效地找到数组中的第K个最大元素。希望这篇文章能够帮助到初学者理解这道题目及其解法。这道题我们可以通过多种方式解决,包括排序、使用优先队列(堆)等。这里我们选择使用快速排序的思想来解决。请注意,你需要找的是数组排序后的第。个最大的元素,而不是第。
2025-08-09 23:15:33
189
原创 LeetCode HOT 100 题目解析:两数之和(Two Sum)
在力扣(LeetCode)上,有一道非常经典的题目叫做“两数之和”(Two Sum)。这道题目经常被用作编程面试题,主要考察对哈希表的使用。整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。已经在哈希表中存在,则找到了符合条件的两个数,返回它们的索引即可。来存储每个数字及其索引。在遍历数组时,计算出需要的补数。以上代码中,我们创建了一个哈希表。,请你在该数组中找出和为目标值。
2025-08-09 23:14:28
262
原创 互联网大厂Java面试:严肃面试官与搞笑程序员的对决
Spring是一个大型应用框架,而SpringBoot是基于Spring的快速开发套件,简化了Spring应用的配置。在某互联网大厂的面试室,一位严肃的面试官正准备提问,而对面坐着一位看似紧张却又想显得轻松的程序员小张。JVM就像一个巨大的购物车,负责把所有的变量都放进去,呃……:JVM内存管理包括堆内存和栈内存,堆内存用于存储对象实例,栈内存用于执行线程时的栈帧。:HashMap嘛,就是……呃,一个很大的箱子,大家都往里面扔东西,有时候会打架……:嗯,第二个问题,请说说HashMap的工作原理。
2025-08-09 23:06:41
195
原创 互联网大厂Java面试:严肃面试官与搞笑程序员的对决
Spring是一个大型应用框架,而SpringBoot是基于Spring的快速开发套件,简化了Spring应用的配置。在某互联网大厂的面试室,一位严肃的面试官正准备提问,而对面坐着一位看似紧张却又想显得轻松的程序员小张。JVM就像一个巨大的购物车,负责把所有的变量都放进去,呃……:JVM内存管理包括堆内存和栈内存,堆内存用于存储对象实例,栈内存用于执行线程时的栈帧。:HashMap嘛,就是……呃,一个很大的箱子,大家都往里面扔东西,有时候会打架……:嗯,第二个问题,请说说HashMap的工作原理。
2025-08-08 12:25:01
130
原创 Java面试复习指南:并发编程、设计模式与Java 8新特性
并发编程是指同时执行多个任务的能力。在Java中,通过线程(Thread)和可运行接口(Runnable)实现。
2025-07-01 22:09:09
222
原创 互联网大厂Java面试模拟:三轮技术面试演练
包括新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)、等待(Waiting)和终止(Terminated)。:指的是Java虚拟机规范中定义的多线程下可见性、原子性和有序性的保障。:采用分代收集(年轻代、老年代、永久代),通过标记-清除、复制、标记-整理等多种算法实现垃圾回收。:通过复用线程减少创建销毁线程的开销,核心参数包括核心线程数、最大线程数、队列容量、拒绝策略等。时,Java内存模型确保所有线程读取到的变量值是一致的,主要用于保证可见性。
2025-06-30 22:11:46
258
原创 Java面试复习:基础、面向对象编程、并发、JVM及Spring框架
Java通过JVM实现“编译一次,到处运行”,支持自动垃圾回收和强类型检查。Spring是一个开源的企业级应用开发框架,提供全面的基础设施支持。面向对象编程(OOP)是基于对象的编程范式,强调可重用性和模块化。Spring的核心是IOC(控制反转)和AOP(面向切面编程)。Java是一种面向对象的编程语言,支持跨平台应用开发。Java虚拟机(JVM)是Java程序的运行环境。OOP的四大基本原则:封装、继承、多态、抽象。JVM包括类加载器、执行引擎、垃圾收集器等。Java并发通过线程、锁、并发集合等实现。
2025-06-30 22:11:05
354
原创 Java面试复习:基础、面向对象、并发编程与框架
Java是一种面向对象的编程语言,具有跨平台、面向对象、分布式、健壮性、安全性、多线程和动态性等特点。面向对象编程(OOP)是一种编程范式,通过对象的概念组织代码。主要特性有封装、继承、多态和抽象。Java虚拟机(JVM)是Java程序运行时的核心组件,负责字节码的加载、解释和执行。Spring是一个开源框架,提供全面的基础设施支持,主要用于构建企业级应用。并发编程是指同时执行多个线程,以提高程序的效率和性能。
2025-06-30 22:10:12
394
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人