- 博客(235)
- 收藏
- 关注
原创 LeetCode 面试经典 150_Kadane 算法_最大子数组和(109_53_C++_中等)(贪心算法 ||动态规划)
LeetCode 面试经典 150_Kadane 算法_最大子数组和(109_53_C++_中等)题目描述:给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。
2026-01-04 14:09:46
237
原创 LeetCode 面试经典 150_分治_合并 K 个升序链表(108_23_C++_困难)
LeetCode 面试经典 150_分治_合并 K 个升序链表(108_23_C++_困难)题目描述:给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。
2025-12-29 16:37:58
622
原创 LeetCode 面试经典 150_分治_排序链表(106_148_C++_中等)
LeetCode 面试经典 150_分治_排序链表(106_148_C++_中等)题目描述:给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。
2025-12-28 12:42:28
788
原创 LeetCode 面试经典 150_分治_将有序数组转换为二叉搜索树(105_108_C++_简单)(递归)
LeetCode 面试经典 150_分治_将有序数组转换为二叉搜索树(105_108_C++_简单)题目描述:给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 平衡 二叉搜索树。
2025-12-27 15:03:01
461
原创 LeetCode 面试经典 150_回溯_单词搜索(104_79_C++_中等)
LeetCode 面试经典 150_回溯_单词搜索(104_79_C++_中等)题目描述:给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。
2025-12-25 15:10:24
934
原创 牛客周赛 Round 123_C_小红出对 (哈希表+哈希集合)
牛客周赛 Round 123_C_小红出对题目描述:小红定义一个「对」为两张牌面数字相同的牌。小红有 n 张牌,她每次能打出一个「对」,但为了不让小紫发现她作弊,在所有打出的牌中不能有两张花色与牌面数字都相同的牌。小红想知道,她最多可以打出多少张牌,请你帮他找出一种出牌方案。
2025-12-21 22:45:05
396
原创 LeetCode 面试经典 150_回溯_括号生成(103_22_C++_中等)
LeetCode 面试经典 150_回溯_括号生成(103_22_C++_中等)题目描述:数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。
2025-12-21 12:08:16
256
原创 LeetCode 面试经典 150_回溯_组合总和(101_39_C++_中等)
LeetCode 面试经典 150_回溯_组合总和(101_39_C++_中等)题目描述:给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 **任意顺序** 返回这些组合。candidates 中的 同一个 数字可以 无限制重复被选取 。如果至少一个数字的被选数量不同,则两种组合是不同的。
2025-12-20 11:10:43
599
原创 LeetCode 面试经典 150_回溯_全排列(100_46_C++_中等)
LeetCode 面试经典 150_回溯_全排列(100_46_C++_中等)题目描述:给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。
2025-12-19 16:34:09
1027
原创 LeetCode 面试经典 150_回溯_组合(99_77_C++_中等)
LeetCode 面试经典 150_回溯_组合(99_77_C++_中等)题目描述:给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。你可以按 任何顺序 返回答案。
2025-12-18 12:20:46
303
原创 LeetCode 面试经典 150_回溯_电话号码的字母组合(98_17_C++_中等)
LeetCode 面试经典 150_回溯_电话号码的字母组合(98_17_C++_中等)题目描述:给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。
2025-12-15 11:58:55
945
原创 LeetCode 面试经典 150_字典树_添加与搜索单词 - 数据结构设计(96_211_C++_中等)
LeetCode 面试经典 150_字典树_添加与搜索单词 - 数据结构设计(96_211_C++_中等)题目描述:请你设计一个数据结构,支持 添加新单词 和 查找字符串是否与任何先前添加的字符串匹配 。实现词典类 WordDictionary : - WordDictionary() 初始化词典对象 - void addWord(word) 将 word 添加到数据结构中,之后可以对它进行匹配 - bool search(word) 如果数据结构中存在字符串与
2025-12-14 21:20:06
1005
原创 LeetCode 面试经典 150_字典树_实现 Trie (前缀树)(95_208_C++_中等)
LeetCode 面试经典 150_字典树_实现 Trie (前缀树)(95_208_C++_中等)题目描述:Trie(发音类似 "try")或者说 前缀树 是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。这一数据结构有相当多的应用情景,例如自动补全和拼写检查。请你实现 Trie 类:Trie() 初始化前缀树对象。void insert(String word) 向前缀树中插入字符串 word 。boolean search(String word)
2025-12-10 13:52:17
930
原创 LeetCode 面试经典 150_图的广度优先搜索_最小基因变化(93_433_C++_中等)(广度优先搜索(BFS))
LeetCode 面试经典 150_图的广度优先搜索_最小基因变化(93_433_C++_中等)题目描述:基因序列可以表示为一条由 8 个字符组成的字符串,其中每个字符都是 'A'、'C'、'G' 和 'T' 之一。假设我们需要调查从基因序列 start 变为 end 所发生的基因变化。一次基因变化就意味着这个基因序列中的一个字符发生了变化。 - 例如,"AACCGGTT" --> "AACCGGTA" 就是一次基因变化。
2025-12-07 13:04:58
861
原创 LeetCode 面试经典 150_图的广度优先搜索_蛇梯棋(93_909_C++_中等)(广度优选搜索)
LeetCode 面试经典 150_图的广度优先搜索_蛇梯棋(93_909_C++_中等)题目描述:给你一个大小为 n x n 的整数矩阵 board ,方格按从 1 到 n2 编号,编号遵循 转行交替方式 ,从左下角开始(即,从 board[n - 1][0] 开始)的每一行改变方向。你一开始位于棋盘上的方格 1。每一回合,玩家需要从当前方格 curr 开始出发,按下述要求前进:
2025-12-06 12:27:57
894
原创 LeetCode 面试经典 150_图_课程表(92_207_C++_中等)(广度优先搜索+拓扑排序)
LeetCode 面试经典 150_图_课程表(92_207_C++_中等)题目描述:你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 bi 。 例如,先修课程对 [0, 1] 表示:想要学习课程 0 ,你需要先完成课
2025-12-05 15:23:34
934
原创 LeetCode 面试经典 150_图_克隆图(90_133_C++_中等)(深度优先:DFS)
LeetCode 面试经典 150_图_克隆图(90_133_C++_中等) 题目描述:给你无向 连通 图中一个节点的引用,请你返回该图的 深拷贝(克隆)。图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。class Node { public int val; public List<Node> neighbors;}
2025-11-28 15:53:00
915
原创 LeetCode 面试经典 150_图_被围绕的区域(89_130_C++_中等)(深度优先搜索:DFS)
LeetCode 面试经典 150_图_被围绕的区域(89_130_C++_中等)题目描述:给你一个 m x n 的矩阵 board ,由若干字符 'X' 和 'O' 组成,捕获 所有 被围绕的区域:连接:一个单元格与水平或垂直方向上相邻的单元格连接。区域:连接所有 'O' 的单元格来形成一个区域。围绕:如果您可以用 'X' 单元格 连接这个区域,并且区域中没有任何单元格位于 board 边缘,则该区域被 'X' 单
2025-11-27 12:23:54
675
原创 LeetCode 面试经典 150_图_岛屿数量(88_200_C++_中等)(DFS)
LeetCode 面试经典 150_图_岛屿数量(88_200_C++_中等)题目描述:给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。
2025-11-26 12:05:55
828
原创 LeetCode 面试经典 150_二叉搜索树_验证二叉搜索树(87_98_C++_中等)
LeetCode 面试经典 150_二叉搜索树_验证二叉搜索树(87_98_C++_中等)题目描述:给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。有效 二叉搜索树定义如下:节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。
2025-11-25 22:05:43
931
原创 STM32CubeMX 基本配置的作用
STM32CubeMX 基本配置的作用:1、列出引脚兼容的MCU2、未使用的GPIO设置,降低功耗3、是 MCU 向外部提供时钟信号的引脚4、程序堆和栈大小5、启用多线程支持6、优化功耗7、导出基本配置信息
2025-11-24 16:26:25
211
原创 LeetCode 面试经典 150_二叉搜索树_二叉搜索树中第 K 小的元素(86_230_C++_中等)
LeetCode 面试经典 150_二叉搜索树_二叉搜索树中第 K 小的元素(86_230_C++_中等)题目描述:给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 小的元素(从 1 开始计数)。
2025-11-24 15:57:46
361
原创 Keil uVision5 进行程序烧录后每次需要点复位才运行
Keil uVision5 进行程序烧录后每次需要点复位才运行1、对 Keil uVision5 进行配置
2025-11-23 17:05:41
236
原创 LeetCode 面试经典 150_二叉搜索树_二叉搜索树的最小绝对差(85_530_C++_简单)
LeetCode 面试经典 150_二叉搜索树_二叉搜索树的最小绝对差(85_530_C++_简单) 题目描述:给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。差值是一个正数,其数值等于两值之差的绝对值。
2025-11-23 11:30:15
407
原创 LeetCode 面试经典 150_二叉树层次遍历_二叉树的锯齿形层序遍历(84_103_C++_中等)(层次遍历+双端队列)
LeetCode 面试经典 150_二叉树层次遍历_二叉树的锯齿形层序遍历(84_103_C++_中等)题目描述:给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。
2025-11-21 11:31:31
627
原创 LeetCode 面试经典 150_二叉树层次遍历_二叉树的层序遍历(83_102_C++_中等)
LeetCode 面试经典 150_二叉树层次遍历_二叉树的层序遍历(83_102_C++_中等)题目描述:给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。
2025-11-19 11:34:14
1114
原创 LeetCode 面试经典 150_二叉树层次遍历_二叉树的层平均值(82_637_C++_简单)
LeetCode 面试经典 150_二叉树层次遍历_二叉树的层平均值(82_637_C++_简单)题目描述:给定一个非空二叉树的根节点 root , 以数组的形式返回每一层节点的平均值。与实际答案相差 10-5 以内的答案可以被接受。
2025-11-19 11:16:29
358
原创 LeetCode 面试经典 150_二叉树层次遍历_二叉树的右视图(81_199_C++_中等)
LeetCode 面试经典 150_二叉树层次遍历_二叉树的右视图(81_199_C++_中等)题目描述:给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。
2025-11-18 22:36:36
327
原创 LeetCode 面试经典 150_二叉树_二叉树的最近公共祖先(80_236_C++_中等)(DFS:后续遍历)
LeetCode 面试经典 150_二叉树_二叉树的最近公共祖先(80_236_C++_中等)题目描述:给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”
2025-11-17 19:48:48
1343
原创 LeetCode 面试经典 150_二叉树_完全二叉树的节点个数(79_222_C++_简单)
LeetCode 面试经典 150_二叉树_完全二叉树的节点个数(79_222_C++_简单)题目描述:给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层(从第 0 层开始),则该层包含 1~ 2h 个节点。
2025-11-17 17:34:45
630
原创 STM32CubeMX+FreeRTOS 实现STM32F103C8T6(江科大组件) 点亮LED灯
STM32CubeMX+FreeRTOS 实现STM32F103C8T6(江科大组件) 点亮LED灯
2025-11-16 17:50:32
207
原创 VSCode 中快捷键的使用:(大小写转换快捷键、自动补全函数注释快捷键、代码和注释自动缩进快捷键)
VSCode 中快捷键的使用:(大小写转换快捷键、自动补全函数注释快捷键、代码和注释自动缩进快捷键)
2025-11-16 17:07:19
804
原创 LeetCode 面试经典 150_二叉树_二叉搜索树迭代器(78_173_C++_中等)(中序遍历+数组)
LeetCode 面试经典 150_二叉树_二叉搜索树迭代器(78_173_C++_中等)题目描述:实现一个二叉搜索树迭代器类BSTIterator ,表示一个按中序遍历二叉搜索树(BST)的迭代器: - BSTIterator(TreeNode root) 初始化 BSTIterator 类的一个对象。BST 的根节点 root 会作为构造函数的一部分给出。指针应初始化为一个不存在于 BST 中的数字,且该数字小于 BST 中的任何元素。
2025-11-16 16:00:59
494
原创 LeetCode 面试经典 150_二叉树_二叉树中的最大路径和(77_124_C++_困难)(DFS)
LeetCode 面试经典 150_二叉树_二叉树中的最大路径和(77_124_C++_困难)题目描述:二叉树中的 路径 被定义为一条节点序列,序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。路径和 是路径中各节点值的总和。给你一个二叉树的根节点 root ,返回其 最大路径和 。
2025-11-16 14:20:26
614
1
原创 LeetCode 面试经典 150_二叉树_求根节点到叶节点数字之和(76_129_C++_中等)(DFS)
LeetCode 面试经典 150_二叉树_求根节点到叶节点数字之和(76_129_C++_中等))题目描述:给你一个二叉树的根节点 root ,树中每个节点都存放有一个 0 到 9 之间的数字。每条从根节点到叶节点的路径都代表一个数字:例如,从根节点到叶节点的路径 1 -> 2 -> 3 表示数字 123 。计算从根节点到叶节点生成的 所有数字之和 。叶节点 是指没有子节点的节点。
2025-11-15 11:36:27
513
原创 LeetCode 面试经典 150_二叉树_路径总和(75_112_C++_简单)(DFS)
LeetCode 面试经典 150_二叉树_路径总和(75_112_C++_简单)题目描述:给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。叶子节点 是指没有子节点的节点。
2025-11-15 11:11:20
1327
原创 LeetCode 面试经典 150_二叉树_二叉树展开为链表(74_114_C++_中等)
LeetCode 面试经典 150_二叉树_二叉树展开为链表(74_114_C++_中等)题目描述:给你二叉树的根结点 root ,请你将它展开为一个单链表:展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同。
2025-11-14 13:21:29
845
原创 LeetCode 面试经典 150_二叉树_填充每个节点的下一个右侧节点指针 II(73_117_C++_中等)(BFS)
LeetCode 面试经典 150_二叉树_填充每个节点的下一个右侧节点指针 II(73_117_C++_中等)题目描述:给定一个二叉树:struct Node { int val; Node *left; Node *right; Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL 。初始状态下,所有 next 指针都被设置为 NULL 。
2025-11-12 12:19:11
374
原创 LeetCode 面试经典 150_二叉树_从中序与后序遍历序列构造二叉树(72_106_C++_中等)
LeetCode 面试经典 150_二叉树_从中序与后序遍历序列构造二叉树(72_106_C++_中等)题目描述:给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。
2025-11-10 20:32:48
939
原创 江科大 STM32F103C8T6 配置尚硅谷 FreeRTOS 环境:可行
江科大 STM32F103C8T6 配置尚硅谷FreeRTOS环境:可行1、关键:FreeRTOSConfig.h 文件
2025-11-09 20:56:04
614
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅