自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 代码随想录算法训练营第八天|翻转字符串里的单词、右旋字符串、字符串总结篇、双指针总结篇

总结了字符串处理中的关键算法和双指针技巧。主要内容包括:1)翻转字符串单词的三步法(去空格、整体反转、单词反转);2)右旋字符串的三次反转法;3)双指针在字符串反转、链表操作和N数之和问题中的应用。文章通过代码示例展示了如何用双指针优化空间复杂度,并分享了学习心得,强调理解算法原理比直接使用库函数更重要。特别提出了反转系列问题的通用解决思路,以及双指针在各类场景下的高效应用,为算法学习者提供了实用指导。

2025-09-13 09:31:13 633

原创 代码随想录算法训练营第七天|反转字符、反转字符串II、替换数字 今天一整个大开心请看文章!!!

讨论了字符串处理中库函数的使用原则,强调面试时应避免直接调用库函数来展示算法实现能力。重点讲解了三个字符串题目:1)原地反转字符串(双指针/异或运算);2)按2k分组反转前k个字符(巧妙处理边界);3)数字替换为"number"(两种实现方式)。作者分享了学习心得,特别兴奋于发现用Math.min()一行代码优雅处理边界情况的方法,并通过实践对比官方代码优化了自己的实现。全文展现了算法学习中的思考过程与突破的喜悦。

2025-09-12 09:52:11 913

原创 代码随想录算法训练营第六天|四数相加II、赎金信、三数之和、四数之和

四个算法问题的解法:1.四数相加II:通过哈希表存储前两数组的和及其频次,再查找后两数组和的相反数。2.赎金信:用数组统计杂志字符频次,检查是否能满足赎金信需求。3.三数之和:排序后使用双指针法,注意去重和剪枝优化。4.四数之和:在三数之和基础上增加一层循环,同样需注意去重和剪枝。所有解法都注重时间复杂度和空间效率,通过排序、哈希、双指针等技巧优化,并处理了重复结果和边界条件。作者在解题过程中遇到困难(如去重逻辑)但最终完成,展现了算法学习中的思考过程。

2025-09-11 10:33:25 624

原创 代码随想录算法训练营第五天|哈希表理论基础、有效的字母异位词、两个数组的交集、快乐数、两数之和

本文总结了哈希表理论基础及常见应用。哈希表通过哈希函数实现高效查找,采用数组、集合或映射存储数据。重点讲解了四个典型算法题:1)字母异位词判断:通过26位数组统计字符频次差异;2)数组交集:使用集合去重并查找共同元素;3)快乐数:用哈希集合检测数字循环;4)两数之和:利用Map存储元素值与索引的映射关系。相比暴力解法,哈希表使时间复杂度从O(n²)降至O(n)。作者表示通过系统学习,掌握了更高效的算法解题思路,增强了编程信心。全文包含详细解题思路、代码实现及个人学习心得。

2025-09-09 12:50:32 654

原创 代码随想录算法训练营第四天|两两交换链表中的节点、删除链表的倒数第N个节点、链表相交、环形链表II

本文总结了链表操作的四个经典算法题:1.两两交换链表节点(递归/迭代实现);2.删除倒数第n个节点(双指针法);3.链表相交判断(长度对齐法/双指针换路法);4.环形链表检测(快慢指针法)。重点讲解了各题的双指针解法思路,包括指针移动规则、边界条件处理和代码实现。作者通过龟兔赛跑的比喻帮助理解环形链表检测原理,并分享了从困惑到理解的学习心得。这些算法都利用了指针同步移动的特性,在O(n)时间复杂度内高效解决问题。

2025-09-06 15:41:24 1049

原创 代码随想录算法训练营第三天|链表的理论基础、移除链表元素、设计链表、反转链表

本文系统介绍了链表的基础知识及常用操作。主要内容包括:1. 链表基础:定义链表节点结构,分析单链表、双链表和循环链表的特点及内存存储方式;2. 链表操作:以LeetCode 203题为例,详细讲解删除链表中指定元素的四种方法(常规处理、优化方法、虚拟头节点法和递归法);3. 链表设计:实现单链表和双链表的基本操作,包括获取节点、头插、尾插、指定位置插入和删除等;4. 链表反转:介绍双指针法和递归法两种反转链表的方法;5. 学习心得:分享链表与数组的区别,以及虚拟节点等实用技巧。文章通过代码示例和详细步骤解析

2025-08-26 10:11:16 1015

原创 代码随想录算法训练营第二天|长度最小的子数组、螺旋矩阵II、 区间和、开发商购买土地

本文总结了数组相关的五个算法问题及解法:1. 长度最小的子数组(滑动窗口/双指针法);2. 螺旋矩阵II(分层填充法);3. 区间和(前缀和优化);4. 土地划分(暴力解法和前缀和优化)。重点介绍了如何利用滑动窗口、分层循环、前缀和等技巧提升算法效率,避免暴力解法导致的超时问题。通过具体代码示例展示了每种解法的实现逻辑,并分享了从暴力解法到优化解法的思考过程,体现了算法学习中的思维提升。

2025-08-22 12:12:23 916

原创 代码随想录算法训练营第一天 | 数组理论基础、二分查找、移除元素、有序数组的平方

本文总结了数组算法基础知识和常见解题技巧。主要内容包括:1)数组理论基础,强调内存连续性和元素覆盖特性;2)二分查找的两种实现方式,分析循环条件和边界处理差异;3)移除元素的暴力解法和双指针优化方案,对比时间复杂度;4)有序数组平方问题的双指针解法,从两端向中间比较填充。作者分享了4小时的学习心得,从暴力解法过渡到双指针技巧,体会到算法优化的重要性。文章通过代码示例和步骤拆解,帮助理解算法核心思想,适合算法初学者参考。

2025-08-20 19:06:42 569

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除