自定义博客皮肤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)
  • 收藏
  • 关注

原创 力扣热题之回溯

本文总结了回溯算法的核心知识点和力扣真题解法。回溯三部曲包括:1)确定函数参数(排列用used数组,组合用startIndex);2)终止条件(path大小等于nums大小);3)单层递归逻辑(组合从下节点开始,排列从头开始)。通过9道真题(全排列、子集、IP地址复原、电话号码组合、组合总和、括号生成、单词搜索、分割回文串、N皇后问题),详细分析了回溯实现中的关键点:参数传递、结果收集、状态恢复、剪枝条件等。特别强调排列与组合的区别、索引控制、路径回溯等易错点,并建议通过重复练习加深理解。

2025-08-14 13:43:44 207

原创 力扣热题之图论

本文介绍了四个经典算法问题的解决方案:1) 岛屿数量问题使用深度优先搜索(DFS)感染标记法;2) 腐烂橘子问题通过暴力模拟感染过程;3) 课程表问题采用拓扑排序检测环;4) 前缀树(Trie)数据结构的实现。其中,岛屿问题通过递归DFS统计连通区域;腐烂橘子问题使用分层感染策略;课程表问题利用状态标记法检测环;前缀树则通过节点指针实现高效的字符串存储与查询。这些算法涵盖了DFS、模拟、拓扑排序和数据结构等核心编程概念,解题思路值得记忆和应用。

2025-08-08 12:34:42 191

原创 力扣热题之二叉树

这里注意看,我定义叶节点的深度是1,而直径是要算边数。简单题,,我还不会,,看到“平衡”直接懵b了。也许用mid二分会平衡,但我没有证据,但还是写一下。暴力解法也挺好,击败50%,注意currentSum要用long long,不然会溢出。感觉跟求最大直径一样,这里再求只取正数,还有更新ans的逻辑与返回的逻辑是不一样的。(1)自己整的 击败5%,,,注意算完当前节点的g,还要写左右子节点的g奥。判断对称的那个函数,是要两个参数的。ruc笔试真题,,,这个我还是硬背一遍,尝试过拟合加深理解,,

2025-08-07 22:49:12 380

原创 力扣热题之链表

本文总结了链表相关的常见算法题解,包括:1. 相交链表(先对齐长度再同步遍历);2. 反转链表(三指针法);3. 回文链表(快慢指针找中点+后半段反转);4. 环形链表(快慢指针判环);5. 合并有序链表(双指针归并);6. 两数相加(模拟竖式计算);7. K个一组翻转(递归/迭代实现);8. 随机链表复制(节点穿插法);9. 排序链表(归并排序);10. LRU缓存(哈希表+双向链表)。重点分析了快慢指针、虚拟头节点、递归分治等核心技巧,并强调了边界条件处理的重要性。

2025-08-05 22:10:26 825

原创 力扣热题之矩阵

本文总结了四种矩阵操作的解法:1)矩阵置零通过行列标记数组实现O(M+N)空间;2)螺旋矩阵通过维护四个边界变量处理开闭区间;3)旋转图像提供了三种方法,包括借助螺旋顺序、使用额外数组和对称交换的巧妙方法;4)二维矩阵搜索采用Z字形搜索策略。每种解法都配有代码实现,其中旋转图像部分特别展示了三种不同时间/空间复杂度的实现方式。这些算法涉及矩阵遍历、边界处理和空间优化等关键技巧,是解决矩阵类问题的典型范例。

2025-08-03 23:19:05 128

原创 LeetCode热题之普通数组

摘要:本文整理了5个经典算法题的解法:1.最大子数组和的动态规划和分治法;2.合并区间利用排序和双指针;3.轮转数组通过三次反转实现高效旋转;4.除自身外数组乘积使用前缀后缀积优化空间;5.缺失正数利用原地哈希和索引排序。每个解法都包含关键思路说明和代码实现,涉及动态规划、分治、双指针、原地算法等典型技巧。

2025-08-02 19:36:14 110

原创 力扣热题day2【滑动窗口+字串】

本文总结了几道经典算法题的解题思路和优化方法。1. 接雨水问题:提出两种解法,面积相减法和双指针法,后者通过一次遍历实现更优解;2. 无重复字符的最长子串:使用滑动窗口和哈希集合实现;3. 字符串异位词查找:比较了排序法(低效)和字符频率统计法(高效);4. 和为K的子数组:利用前缀和与哈希表优化;5. 滑动窗口最大值:展示了单调队列的高效实现;6. 最小覆盖子串:结合滑动窗口和字符频率统计。文章着重分析了算法优化的关键点,如避免重复计算、合理选择数据结构等,展示了不同解法的性能差异。

2025-08-01 22:20:51 113

原创 力扣热题day1【哈希+双指针】

这个最开始没想出来,对stl使用不熟练,应该用一个unordered_map<string,vector<string>>,前面的先sort一下,然后取出来的时候用one.second。我用的是类似于那个买卖股票的,注意ans的更新时机,temp每一变就要更新一下ans。想不出来,然后一看“排序+双指针”,这不就是两数之和的化简版吗.一个是左边的,还有一个是中间两个。一开始错误用了sort,想双指针来着,发现要的是index。解法二:双指针,谁拖后腿就往中间动,优先移动短板指针。

2025-07-20 22:38:02 140

空空如也

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

TA关注的人

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