
Leetcode刷题指南
文章平均质量分 91
📚「Leetcode刷题指南:算法的蜕变之路」
专栏聚焦LeetCode经典与高频题目,拆解复杂逻辑,分享高效解题思路与代码优化技巧。用通俗易懂的语言搭配实际例题助你攻克每一道难关。坚持打卡,一起用代码征LeetCode,为技术面试与职业发展筑牢根基!
草莓熊Lotso
会当凌绝顶 ,一览众山小
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【LeetCode刷题指南】--二叉树的后序遍历,二叉树遍历
文章分享了两道二叉树题目解法:1. 力扣145题后序遍历,通过动态开辟数组存储遍历结果,使用递归计算节点数并实现后序遍历;2. 牛客网二叉树遍历题,根据前序序列构建二叉树后中序输出。两题均采用递归解法,时间复杂度O(n),空间复杂度O(n)。文章提供了详细解题思路、代码实现和复杂度分析,适合数据结构学习者参考,欢迎指正补充。原创 2025-08-04 07:54:01 · 952 阅读 · 11 评论 -
【LeetCode刷题指南】--对称二叉树,另一颗树的子树
本文分享了LeetCode上两道二叉树相关题目的解题思路:对称二叉树(101题)和另一棵树的子树(572题)。对于对称二叉树,通过递归比较左右子树是否镜像对称;对于子树问题,则递归判断当前树或其子树是否与目标树相同。两题均采用递归解法,时间复杂度O(n),空间复杂度O(n)。文章提供了详细代码实现和解题过程图示,适合准备面试或提升算法能力的读者参考学习。作者鼓励读者补充指正,并预告后续将继续更新LeetCode刷题系列。原创 2025-08-04 07:53:45 · 686 阅读 · 11 评论 -
【LeetCode刷题指南】--二叉树的前序遍历,二叉树的中序遍历
本文分享了LeetCode二叉树遍历的解题思路,包含前序和中序遍历两道题目。解题核心在于动态开辟数组存储遍历结果,通过递归实现TreeSize计算节点数,并修改传统遍历函数将结果存入数组而非打印。文章详细说明了参数传递(如i需传地址)、内存分配等关键点,均采用递归实现,时间复杂度O(n),空间复杂度O(n)。代码示例展示了完整实现过程,包括节点结构体定义、遍历函数和主函数逻辑。作者强调这是从基础IO题向接口型题目的过渡,欢迎读者补充指正。原创 2025-08-04 07:53:20 · 611 阅读 · 8 评论 -
【LeetCode刷题指南】--单值二叉树,相同的树
这篇LeetCode刷题指南分享了两个二叉树问题的递归解法:单值二叉树(965题)和相同的树(100题)。作者通过递归思路,分别比较根节点与子节点值、两棵树的对应节点值,最终返回判断结果。两个解法的时间复杂度均为O(n),空间复杂度O(n)。文章包含详细解题思路、图示说明和完整代码实现,适合数据结构学习者和面试准备者参考。作者鼓励读者进行补充和指正,并预告后续将继续分享LeetCode刷题经验。原创 2025-08-02 08:49:47 · 882 阅读 · 5 评论 -
【LeetCode刷题指南】--设计循环队列
本文介绍了如何用数组实现循环队列的设计。循环队列具有固定空间、不可扩容的特点,需要处理队头删除、队尾插入以及队列满/空的判断。关键点包括:1)使用k+1个空间区分队列满/空状态;2)通过取模运算处理下标越界;3)特殊处理rear=0时的队尾元素获取。文章详细讲解了插入、删除、获取队头/尾元素等操作的实现逻辑,并提供了完整的C语言代码示例。该设计时间复杂度为O(1),空间复杂度O(k),适合需要高效队列操作的场景。理解循环队列的实现需要结合图示分析,对数据结构初学者具有一定挑战性。原创 2025-07-29 10:04:28 · 735 阅读 · 5 评论 -
【LeetCode刷题指南】--队列实现栈,栈实现队列
本文分享了两个经典力扣题目:队列实现栈和栈实现队列的解法。对于队列实现栈(LeetCode 225题),通过两个队列的交替使用,在入栈时插入非空队列,出栈时将前size-1个元素转移到另一队列,实现栈的先进后出特性。对于栈实现队列(LeetCode 232题),使用两个栈分别处理入队和出队操作,当出队栈为空时将入队栈元素全部转移过来。详细讲解了两种实现的数据结构定义、关键算法逻辑和代码实现。这些题目能帮助巩固队列和栈的知识,理解数据结构间的相互转换原理。原创 2025-07-27 12:26:58 · 987 阅读 · 4 评论 -
【LeetCode刷题指南】--有效的括号
本文介绍了使用栈结构解决LeetCode"有效的括号"问题的思路。作者通过C语言实现了一个栈结构,并详细讲解了解题步骤:遍历字符串时左括号入栈,右括号与栈顶元素匹配,匹配失败返回false,成功则出栈继续遍历,最后判断栈是否为空来确定括号有效性。文章强调力扣平台更适合面试准备,并提供了完整的代码实现。复杂度分析显示时间复杂度为O(n),空间复杂度为O(*)。作者建议读者直接使用已实现的栈结构来解决问题。原创 2025-07-26 07:46:32 · 951 阅读 · 3 评论 -
【LeetCode刷题指南】--随机链表的复制
本文介绍了LeetCode第138题"随机链表的复制"的解题思路。作者首先阐述了浅拷贝与深拷贝的区别,指出本题需要实现深拷贝。解题过程分为三个步骤:1)在原链表基础上拷贝节点;2)设置random指针(特别注意copy->random = pcur->random->next);3)断开新旧链表。文章提供了完整的C语言实现代码,包括创建节点、插入链表、设置random指针等关键函数,并强调了空链表的特殊处理。最后提醒读者LeetCode题目相比C语言基础题更复杂,需要适原创 2025-07-25 09:22:01 · 741 阅读 · 0 评论 -
【LeetCode刷题指南】--环形链表,环形链表II(附结论证明过程)
本文通过两道经典链表题目(141&142)详细讲解快慢指针应用。141题使用慢指针一步、快指针两步的遍历方式检测环形链表,时间复杂度O(n);142题进一步利用相遇点到入环点的距离等于头节点到入环点距离的特性定位环入口。文章包含严谨的数学证明过程、代码实现(含快指针走三步的特殊情况)及图解分析,强调算法实践中双指针步长选择的最佳实践。适合数据结构与算法学习者深入理解链表操作的核心技巧。原创 2025-07-21 13:30:45 · 3277 阅读 · 0 评论 -
【LeetCode刷题指南】--链表的回文结构详解,相交链表
本文分享了两种链表问题的解题思路:1. 链表的回文结构判断,提供了三种方法:创建新链表反转比较、数组存储判断以及找中间节点反转后比较,重点讲解了后两种方法的代码实现;2. 相交链表问题,通过计算链表长度差让长链表先走差值步,再同步遍历寻找交点。文章包含详细代码示例和图示说明,适合算法学习者参考。两种问题均采用双指针技巧,时间复杂度为O(n),空间复杂度优化至O(1)。原创 2025-07-21 09:36:36 · 2871 阅读 · 1 评论 -
【LeetCode刷题指南】--反转链表,链表的中间结点,合并两个有序链表
本文介绍了三种经典链表问题的解法:1.反转链表:使用迭代法,通过临时保存next节点,将当前节点指向新链表头,时间复杂度O(n);2.链表的中间结点:利用快慢指针,快指针每次走两步,慢指针走一步,当快指针到达末尾时慢指针即为中间节点;3.合并两个有序链表:创建哨兵节点,比较两链表节点值进行尾插,最后处理剩余节点,时间复杂度O(n)。文章提供了详细解题思路、图示说明和C语言代码实现,适合算法学习者参考。原创 2025-07-21 09:33:11 · 3055 阅读 · 1 评论 -
【LeetCode刷题指南】--数组串联,合并两个有序数组,删除有序数组中的重复项
本文分享了三个LeetCode数组题目的解题思路和代码实现:1.数组串联(1929题),通过malloc开辟新数组空间并复制元素;2.合并有序数组(88题),采用双指针倒序原地合并的方法;3.删除有序数组重复项(26题),使用双指针原地修改数组。每道题都给出了复杂度分析(均为O(n)时间复杂度)和详细的解题过程图示,并强调了力扣作为刷题平台的优势。文章延续了作者一贯的技术分享风格,包含完整代码示例和解题思路,适合算法学习者参考。原创 2025-07-18 07:41:02 · 1136 阅读 · 1 评论 -
【LeetCode刷题指南特别篇】--移除链表元素,调试技巧,链表分割
本文分享了两道链表题目的LeetCode解题技巧:1.移除链表元素(203题)通过创建新链表尾插非val节点,注意尾节点置空;2.链表分割(牛客题)采用双链表法分别存储小于/大于x的节点,强调尾指针处理。重点演示了VS调试技巧:通过复制OJ代码、创建测试用例、使用调试工具定位未置空尾节点导致的错误。文章包含详细图解和代码实现,适合需要提升链表问题调试能力的开发者阅读,建议配合调试实践掌握关键细节处理技巧。原创 2025-07-18 07:41:10 · 2944 阅读 · 3 评论 -
【LeetCode刷题指南】--消失的数字,轮转数组,移除元素
《LeetCode刷题指南:消失的数字、轮转数组与移除元素》 本文分享了三个LeetCode经典题目的解题思路: 消失的数字:通过异或运算特性找出缺失数字,时间复杂度O(N); 轮转数组:采用三次逆置法实现高效轮转,处理k>n情况时使用取模运算; 移除元素:使用双指针法原地修改数组,保持O(1)空间复杂度。每道题均包含详细解题步骤图示、复杂度分析和代码实现,适合数据结构学习者和面试准备者参考。文章延续作者一贯的"生活是默默的坚持"学习态度,建议读者结合往期算法复杂度解析内容进行原创 2025-06-27 08:02:42 · 1374 阅读 · 1 评论