力扣算法题目解析
力扣算法题目解析, 主要包括在中等难度和部分高难度题目的解析。请大家多多关注。
抖音上游泳的鱼
程序员
展开
-
Leetcode 力扣106. 从中序与后序遍历序列构造二叉树 (抖音号:708231408)
是同一棵树的后序遍历,请你构造并返回这颗。(抖音号:708231408)是二叉树的中序遍历,原创 2024-05-31 09:53:16 · 313 阅读 · 0 评论 -
Leetcode 力扣105. 从前序与中序遍历序列构造二叉树 (抖音号:708231408)
请构造二叉树并返回其根节点。(抖音号:708231408)原创 2024-05-31 09:49:47 · 370 阅读 · 0 评论 -
Leetcode 力扣103. 二叉树的锯齿形层序遍历 (抖音号:708231408)
(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。(抖音号:708231408)原创 2024-05-26 16:02:03 · 328 阅读 · 0 评论 -
Leetcode 力扣102. 二叉树的层序遍历 (抖音号:708231408)
(即逐层地,从左到右访问所有节点)。(抖音号:708231408)原创 2024-05-26 16:01:17 · 277 阅读 · 0 评论 -
Leetcode 力扣99. 恢复二叉搜索树 (抖音号:708231408)
2 不能在 3 的右子树中,因为 2 < 3。交换 2 和 3 使二叉搜索树有效。3 不能是 1 的左孩子,因为 3 > 1。交换 1 和 3 使二叉搜索树有效。请在不改变其结构的情况下,恢复这棵树。(抖音号:708231408)两个节点的值被错误地交换。给你二叉搜索树的根节点。原创 2024-05-25 13:25:45 · 226 阅读 · 0 评论 -
Leetcode 力扣98. 验证二叉搜索树 (抖音号:708231408)
根节点的值是 5 ,但是右子节点的值是 4。,判断其是否是一个有效的二叉搜索树。(抖音号:708231408)给你一个二叉树的根节点。原创 2024-05-25 13:22:56 · 243 阅读 · 0 评论 -
Leetcode 力扣97. 交错字符串 (抖音号:708231408)
的定义与过程如下,其中每个字符串都会被分割成若干。(抖音号:708231408)原创 2024-05-24 16:45:08 · 531 阅读 · 0 评论 -
Leetcode 力扣96. 不同的二叉搜索树 (抖音号:708231408)
返回满足题意的二叉搜索树的种数。(抖音号:708231408)个节点组成且节点值从。原创 2024-05-24 16:44:55 · 407 阅读 · 0 评论 -
Leetcode 力扣95. 不同的二叉搜索树 II (抖音号:708231408)
(抖音号:708231408),请你生成并返回所有由。个节点组成且节点值从。原创 2024-05-23 16:26:40 · 476 阅读 · 0 评论 -
Leetcode 力扣93. 复原IP地址 (抖音号:708231408)
用以表示一个 IP 地址,返回所有可能的。正好由四个整数(每个整数位于。(抖音号:708231408)之间组成,且不能含有前导。给定一个只包含数字的字符串。,这些地址可以通过在。原创 2024-05-23 16:24:31 · 294 阅读 · 0 评论 -
Leetcode 力扣92. 反转链表 II (抖音号:708231408)
给你单链表的头指针head和两个整数left和right,其中left原创 2024-05-21 14:48:03 · 604 阅读 · 0 评论 -
Leetcode 力扣91. 解码方法(抖音号:708231408)
它可以解码为 "BZ" (2 26), "VF" (22 6), 或者 "BBF" (2 2 6)。已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。它可以解码为 "AB"(1 2)或者 "L"(12)。(抖音号:708231408)的消息通过以下映射进行了。题目数据保证答案肯定是一个。注意,消息不能分组为。原创 2024-05-21 14:47:29 · 464 阅读 · 0 评论 -
Leetcode 力扣90. 子集 II (抖音号:708231408)
其中可能包含重复元素,请你返回该数组所有可能的。返回的解集中,子集可以按。(抖音号:708231408)原创 2024-05-20 14:58:29 · 269 阅读 · 0 评论 -
Leetcode 力扣89. 格雷编码 (抖音号:708231408)
0,2,3,1] 也是一个有效的格雷码序列,其二进制表示是 [00,10,11,01]。[0,1,3,2] 的二进制表示是 [00,01,11,10]。(抖音号:708231408)原创 2024-05-20 14:55:58 · 386 阅读 · 0 评论 -
Leetcode 力扣87. 扰乱字符串 (抖音号:708231408)
"g/r / e/at" --> "r/g / e/at" // 随机决定:第一组「交换两个子字符串」,第二组「保持这两个子字符串的顺序不变」"gr/eat" --> "g/r / e/at" // 在子字符串上递归执行此算法。"r/g / e/at" --> "r/g / e/ a/t" // 继续递归执行此算法,将 "at" 分割得到 "a/t""r/g / e/ a/t" --> "r/g / e/ a/t" // 随机决定:「保持这两个子字符串的顺序不变」使用下面描述的算法可以扰乱字符串。原创 2024-05-17 14:53:34 · 387 阅读 · 0 评论 -
Leetcode 力扣86. 分隔链表 (抖音号:708231408)
两个分区中每个节点的初始相对位置。,请你对链表进行分隔,使得所有。给你一个链表的头节点。 (抖音号:708231408)原创 2024-05-17 14:49:23 · 303 阅读 · 0 评论 -
Leetcode 力扣85. 最大矩形(抖音号:708231408)
的二维二进制矩阵,找出只包含。(抖音号:708231408)的最大矩形,并返回其面积。最大矩形如上图所示。原创 2024-05-15 13:07:21 · 254 阅读 · 0 评论 -
Leetcode 力扣84. 柱状图中最大的矩形(抖音号:708231408)
个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1。求在该柱状图中,能够勾勒出来的矩形的最大面积。最大的矩形为图中红色区域,面积为 10。(抖音号:708231408)原创 2024-05-15 13:04:11 · 180 阅读 · 0 评论 -
Leetcode 力扣83.删除排序链表中的重复元素 (抖音号:708231408)
删除所有重复的元素,使每个元素只出现一次。(抖音号:708231408)给定一个已排序的链表的头。原创 2024-05-14 16:09:34 · 322 阅读 · 0 评论 -
Leetcode 力扣82.删除排序链表中的重复元素 II (抖音号:708231408)
删除原始链表中所有重复数字的节点,只留下不同的数字。(抖音号:708231408)给定一个已排序的链表的头。原创 2024-05-14 16:09:20 · 298 阅读 · 0 评论 -
Leetcode 力扣81.搜索旋转排序数组 II(抖音号:708231408)
请你编写一个函数来判断给定的目标值是否存在于数组中。已知存在一个按非降序排列的整数数组。你必须尽可能减少整个操作步骤。(抖音号:708231408),数组中的值不必互不相同。在预先未知的某个下标。原创 2024-05-12 12:12:11 · 253 阅读 · 0 评论 -
Leetcode 力扣80. 删除有序数组中的重复项 II (抖音号:708231408)
方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。是以“引用”方式传递的。删除重复出现的元素,使得出现次数超过两次的元素。// 根据你的函数返回的长度, 它会打印出数组中。// 在函数里修改输入数组对于调用者是可见的。为什么返回数值是整数,但输出的答案是数组呢?并在使用 O(1) 额外空间的条件下完成。不需要考虑数组中超出新长度后面的元素。, 并且原数组的前五个元素被修改为。不要使用额外的数组空间,你必须在。(抖音号:708231408),返回删除后数组的新长度。请注意,输入数组是以。原创 2024-05-12 12:09:51 · 526 阅读 · 0 评论 -
Leetcode 力扣79. 单词搜索(抖音号:708231408)
单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。原创 2024-05-11 09:04:33 · 314 阅读 · 0 评论 -
Leetcode 力扣78. 子集(抖音号:708231408)
给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。原创 2024-05-11 09:00:19 · 217 阅读 · 0 评论 -
Leetcode 力扣77.组合(抖音号:708231408)
给定两个整数n和k,返回范围[1, n]中所有可能的k个数的组合。你可以按任何顺序返回答案。(抖音号:708231408)原创 2024-05-10 13:40:51 · 238 阅读 · 0 评论 -
Leetcode 力扣[Hard]76. 最小覆盖子串(抖音号:708231408)
最小覆盖子串 "BANC" 包含来自字符串 t 的 'A'、'B' 和 'C'。所有字符的子串,则返回空字符串。整个字符串 s 是最小覆盖子串。(抖音号:708231408)所有字符的最小子串。原创 2024-05-10 13:30:36 · 464 阅读 · 0 评论 -
Leetcode 力扣75. 颜色分类 (抖音号:708231408)
对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。必须在不使用库内置的 sort 函数的情况下解决这个问题。给定一个包含红色、白色和蓝色、共。(抖音号:708231408)分别表示红色、白色和蓝色。原创 2024-05-09 12:17:06 · 374 阅读 · 0 评论 -
Leetcode 力扣74. 搜索二维矩阵(抖音号:708231408)
(抖音号:708231408)给你一个满足下述两条属性的。原创 2024-05-09 12:16:15 · 335 阅读 · 0 评论 -
Leetcode 力扣72. 编辑距离(抖音号:708231408)
inention -> enention (将 'i' 替换为 'e')enention -> exention (将 'n' 替换为 'x')exention -> exection (将 'n' 替换为 'c')horse -> rorse (将 'h' 替换为 'r')intention -> inention (删除 't')exection -> execution (插入 'u')rorse -> rose (删除 'r')rose -> ros (删除 'e')(抖音号:708231408)原创 2024-05-07 11:24:32 · 361 阅读 · 0 评论 -
Leetcode 力扣71. 简化路径 (抖音号:708231408)
表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。任意多个连续的斜杠(即,,表示指向某一文件或目录的 Unix 风格。开头),请你将其转化为更加简洁的规范路径。对于此问题,任何其他格式的点(例如,在 Unix 风格的文件系统中,一个点()表示当前目录本身;(抖音号:708231408))均被视为文件/目录名称。原创 2024-05-07 11:22:45 · 404 阅读 · 0 评论 -
Leetcode 力扣64. 最小路径和(抖音号:708231408)
请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。因为路径 1→3→1→1→1 的总和最小。每次只能向下或者向右移动一步。(抖音号:708231408)给定一个包含非负整数的。原创 2024-05-06 16:25:23 · 299 阅读 · 0 评论 -
Leetcode 力扣63. 不同路径 II(抖音号:708231408)
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格的左上角 (起始点在下图中标记为 “Start” )。1. 向右 -> 向右 -> 向下 -> 向下。2. 向下 -> 向下 -> 向右 -> 向右。3x3 网格的正中间有一个障碍物。网格中的障碍物和空位置分别用。从左上角到右下角一共有。原创 2024-05-06 16:16:44 · 366 阅读 · 0 评论 -
Leetcode 力扣62. 不同路径(抖音号:708231408)
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。网格的左上角 (起始点在下图中标记为 “Start” )。(抖音号:708231408)问总共有多少条不同的路径?原创 2024-05-05 16:39:29 · 293 阅读 · 0 评论 -
Leetcode 力扣61. 旋转链表(抖音号:708231408)
旋转链表,将链表每个节点向右移动。(抖音号:708231408)给你一个链表的头节点。原创 2024-05-05 16:02:41 · 339 阅读 · 2 评论 -
Leetcode 力扣59. 螺旋矩阵 II(抖音号:708231408)
所有元素,且元素按顺时针顺序螺旋排列的。(抖音号:708231408)原创 2024-05-04 06:39:33 · 326 阅读 · 0 评论 -
Leetcode 力扣57. 插入区间(抖音号:708231408)
升序排列,且区间之间不重叠(如果有必要的话,可以合并区间)。你可以创建一个新数组然后返回它。按照区间起始端点排序的区间列表。表示另一个区间的开始和结束。(抖音号:708231408)个区间的开始和结束,并且。原创 2024-05-04 06:35:38 · 205 阅读 · 0 评论 -
Leetcode 力扣56. 合并区间(抖音号:708231408)
区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。区间 [1,4] 和 [4,5] 可被视为重叠区间。表示若干个区间的集合,其中单个区间为。请你合并所有重叠的区间,并返回。(抖音号:708231408)原创 2024-05-03 06:04:44 · 5 阅读 · 0 评论 -
Leetcode 力扣55. 跳跃游戏(抖音号:708231408)
无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回。给你一个非负整数数组。原创 2024-05-03 06:03:30 · 295 阅读 · 0 评论 -
Leetcode 力扣53. 最大子数组和(抖音号:708231408)
请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。连续子数组 [4,-1,2,1] 的和最大,为 6。是数组中的一个连续部分。原创 2024-05-02 06:11:03 · 6 阅读 · 0 评论 -
Leetcode 力扣54. 螺旋矩阵(抖音号:708231408)
返回矩阵中的所有元素。原创 2024-05-02 06:08:58 · 199 阅读 · 0 评论