
leetcode
文章平均质量分 58
小wanga
须知少时凌云志,曾许人间第一流
展开
-
【算法专题十六】多源BFS
本文主要介绍了三个与图论相关的算法问题及其解决方案。首先,多源最短路问题通过广度优先搜索(BFS)解决,适用于计算矩阵中每个点到最近零点的距离。其次,01矩阵问题同样使用BFS,通过从零点出发逐层扩展,计算每个点的最短距离。最后,飞地的数量问题通过BFS标记边界可达的点,统计无法到达边界的陆地数量。每个问题都提供了详细的思路和代码实现,展示了BFS在图论问题中的广泛应用。原创 2025-05-23 16:12:37 · 395 阅读 · 0 评论 -
【算法专题十五】BFS解决最短路问题
本文介绍了三个基于广度优先搜索(BFS)的算法问题:迷宫中离入口最近的出口、最小基因变化和单词接龙。对于迷宫问题,通过BFS从入口开始搜索,找到最近的出口。最小基因变化问题则通过BFS在基因库中寻找从起始基因到目标基因的最少变化次数。单词接龙问题同样使用BFS,在单词列表中寻找从起始单词到目标单词的最短转换路径。每个问题都提供了详细的思路和代码实现,展示了BFS在解决最短路径问题中的高效性。原创 2025-05-21 16:49:19 · 516 阅读 · 0 评论 -
【算法专题十四】BFS解决FloodFill算法
题目链接。原创 2025-05-19 17:28:33 · 469 阅读 · 0 评论 -
【算法专题十三】优先级队列
本文介绍了LeetCode中的四个与堆相关的算法题目及其解决方案。首先,1046.最后一块石头重量通过大根堆模拟石头碰撞过程,最终返回剩余石头的重量。其次,703.数据流中的第K大元素使用小根堆维护数据流中的前K大元素,确保每次查询时能快速返回第K大值。接着,692.前K个高频单词通过哈希表统计单词频率,并结合自定义比较器的小根堆,返回频率最高的前K个单词。最后,数据流的中位数通过大根堆和小根堆的平衡维护,确保能够快速获取数据流的中位数。每个问题都提供了详细的思路和代码实现,展示了堆在解决复杂问题中的高效性原创 2025-05-18 15:18:12 · 454 阅读 · 0 评论 -
【算法专题十二】队列+宽搜
本文介绍了四道LeetCode题目及其解法,主要涉及二叉树的层序遍历及其变种。第一题是N叉树的层序遍历,通过队列实现逐层遍历并记录每层节点值。第二题是二叉树的锯齿形层序遍历,在层序遍历的基础上,通过标志位控制每层节点的输出顺序。第三题是求二叉树的最大宽度,通过给节点编号并计算每层最左和最右节点的编号差来得到宽度。第四题是在每层中找最大值,通过层序遍历逐层比较节点值并记录最大值。每道题目均提供了详细的思路和C++代码实现,帮助理解二叉树的遍历及其应用。原创 2025-05-16 15:16:36 · 408 阅读 · 0 评论 -
【算法专题十二】栈
【代码】【算法专题十二】栈。原创 2025-05-15 01:35:49 · 411 阅读 · 0 评论 -
【算法专题十一】字符串
【代码】【算法专题十一】字符串。原创 2025-05-08 13:45:50 · 490 阅读 · 0 评论 -
【算法专题十】哈希表
题目链接。原创 2025-05-06 16:08:23 · 672 阅读 · 0 评论 -
【算法专题九】链表
题目链接。原创 2025-05-03 16:11:55 · 403 阅读 · 0 评论 -
【算法】动态规划专题一 斐波那契数列模型 1-4
【代码】【算法】动态规划专题一 斐波那契数列模型 1-4。原创 2025-05-02 13:09:22 · 561 阅读 · 0 评论 -
【算法】 分治-归并 算法专题
[toc[原创 2025-03-21 11:03:54 · 235 阅读 · 0 评论 -
【算法】分治-快排 算法专题
【代码】【算法】分治-快排 算法专题。原创 2025-03-18 11:15:15 · 182 阅读 · 0 评论 -
【算法】模拟算法专题
模拟算法其实就是按题意解题。原创 2025-03-17 10:15:30 · 655 阅读 · 0 评论 -
【算法】位运算
题目链接。原创 2025-03-15 23:47:24 · 308 阅读 · 0 评论 -
【算法刷题】前缀和
即先求dp_left,再求dp_right;然后注意初始条件,dp_left[0] = 1;跟上一题前缀和思路相似,只不过变成了前缀积。原创 2025-03-06 16:01:46 · 864 阅读 · 0 评论 -
【leetcode】二分查找专题
题目链接。原创 2025-03-01 00:00:30 · 381 阅读 · 0 评论 -
【leetcode】二分算法模板总结
二分算法原创 2025-02-24 13:45:14 · 230 阅读 · 0 评论 -
【leetcode】滑动窗口
【代码】【leetcode】滑动窗口。原创 2025-02-20 12:55:14 · 381 阅读 · 0 评论 -
【leetcode】双指针:有效三角形的个数 and 和为s的两个数
【代码】【leetcode】双指针:有效三角形的个数 and 和为s的两个数。原创 2025-02-18 00:13:03 · 231 阅读 · 0 评论 -
【leetcode】双指针:快乐数 and 盛最多水的容器
根据两个示例,可写出下图中两个循环,可见,不管是任何数,最终都会进入循环。循环分两种情况:1.循环数为1;2.循环数不为1,是其他一些数不断循环。(循环分为两种情况,不会出现其他情况;所以当我们执行平方求和这个操作811次之后,这中间肯定有一个结果是重复的,所以最后一定会死循环。鸽巢原理证明:n个巢,n+1只鸽子,则一定至少有一个巢里面有两只鸽子。同理,本题中,n最大为2。快慢双指针(我们之前学习链表的时候曾经学过,来看链表中时候有循环节点)就算数最大为9999999999(10个9),9。原创 2025-02-13 13:31:24 · 318 阅读 · 0 评论 -
【leetcode】双指针:三数之和 and 四数之和
【代码】【leetcode】双指针:三数之和 and 四数之和。原创 2025-02-13 13:31:00 · 290 阅读 · 0 评论 -
【leetcode】双指针:移动零 and 复写零
【代码】【leetcode】双指针:移动零 and 复写零。原创 2025-02-12 00:08:12 · 424 阅读 · 0 评论 -
【leetcode-C++】692.前k个高频单词
【代码】【leetcode-C++】692.前k个高频单词。原创 2024-11-26 15:47:32 · 210 阅读 · 0 评论 -
【leetcode-C++】145.二叉树的后序遍历
输入:root = [1,2,3,4,5,null,8,null,null,6,7,9]给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历。进阶:递归算法很简单,你可以通过迭代算法完成吗?输入:root = [1,null,2,3]输出:[4,6,7,5,2,9,8,3,1]树中节点的数目在范围 [0, 100] 内。输入:root = [1]输入:root = []输出:[3,2,1]原创 2024-11-25 20:14:29 · 142 阅读 · 0 评论 -
【leetcode-C++】94.二叉树的中序遍历
给定一个二叉树的根节点 root ,返回 它的 中序 遍历。进阶: 递归算法很简单,你可以通过迭代算法完成吗?输入:root = [1,null,2,3]树中节点数目在范围 [0, 100] 内。输入:root = [1]输入:root = []输出:[1,3,2]原创 2024-11-25 11:35:54 · 186 阅读 · 0 评论 -
【leetcode-C++】144.二叉树的前序遍历
输入:root = [1,2,3,4,5,null,8,null,null,6,7,9]给你二叉树的根节点 root ,返回它节点值的 前序 遍历。进阶:递归算法很简单,你可以通过迭代算法完成吗?输入:root = [1,null,2,3]输出:[1,2,4,5,6,7,3,8,9]树中节点数目在范围 [0, 100] 内。输入:root = [1]输入:root = []输出:[1,2,3]原创 2024-11-25 11:35:36 · 264 阅读 · 0 评论 -
【leetcode】C++_string 917.仅仅反转字母
输入:s = “Test1ng-Leet=code-Q!输出:“Qedo1ct-eeLg=ntse-T!输入:s = “a-bC-dEf-ghIj”输出:“j-Ih-gfE-dCba”输入:s = “ab-cd”输出:“dc-ba”原创 2024-08-28 17:17:30 · 465 阅读 · 0 评论 -
【leetcode】138.随机链表的复制
深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的 next 指针和 random 指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。复制链表中的指针都不应指向原链表中的节点。给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。用一个由 n 个节点组成的链表来表示输入/输出中的链表。建立拷贝节点,拷贝节点接在原节点后面。返回复制链表的头节点。原创 2024-06-25 00:01:48 · 1529 阅读 · 1 评论 -
力扣 面试题17.04.消失的数字
数组nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?输入:[9,6,4,2,3,5,7,0,1]解答思路:使用异或思想解题。输入:[3,0,1]原创 2024-06-15 10:04:09 · 2606 阅读 · 0 评论