![](https://img-blog.csdnimg.cn/38ac1f426dbe4fc69a46d076d173d508.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
LeetCode刷题
文章平均质量分 89
本专栏主要来记录每日的LeetCode刷题,为明年秋招进大厂做准备,目标500道算法题目.
为了大厂,冲冲冲!
爱编程的大李子
路漫漫其修远兮,吾将上下而求索
展开
-
<冲刺大厂之算法刷题>回溯算法
<冲刺大厂之算法刷题>回溯算法原创 2022-07-07 15:38:04 · 292 阅读 · 0 评论 -
<冲刺大厂之算法刷题>栈和队列
<冲刺大厂之算法刷题>栈和队列原创 2022-05-06 10:38:26 · 396 阅读 · 6 评论 -
<冲刺大厂之算法刷题>字符串
<冲刺大厂之算法刷题>字符串原创 2022-04-26 22:42:18 · 1287 阅读 · 1 评论 -
<冲刺大厂之算法刷题>Hash表
<冲刺大厂之算法刷题>Hash表原创 2022-04-20 15:44:23 · 1288 阅读 · 10 评论 -
<代码随想录二刷>链表
<代码随想录二刷>链表原创 2022-04-17 12:37:49 · 1241 阅读 · 0 评论 -
<代码随想录二刷>二分查找 | 双指针 | 滑动窗口 | 枚举模拟
<代码随想录二刷>二分查找 | 双指针 | 滑动窗口 | 枚举模拟原创 2022-04-14 22:25:02 · 820 阅读 · 13 评论 -
LeetCode刷题day61
LeetCode刷题day61原创 2022-04-03 03:00:00 · 726 阅读 · 3 评论 -
LeetCode刷题day60
LeetCode刷题day60原创 2022-03-31 21:44:54 · 357 阅读 · 0 评论 -
LeetCode刷题day59
LeetCode刷题day59原创 2022-03-30 04:00:00 · 812 阅读 · 2 评论 -
LeetCode刷题day58
LeetCode刷题day58原创 2022-03-29 08:10:56 · 2425 阅读 · 2 评论 -
LeetCode刷题day57
LeetCode刷题day57原创 2022-03-26 15:28:10 · 1286 阅读 · 0 评论 -
LeetCode刷题day56
LeetCode刷题day56原创 2022-03-25 16:00:00 · 6440 阅读 · 13 评论 -
LeetCode刷题day55
LeetCode刷题day55原创 2022-03-23 03:00:00 · 1585 阅读 · 4 评论 -
LeetCode刷题day54
LeetCode刷题day54原创 2022-03-22 08:08:51 · 1420 阅读 · 8 评论 -
LeetCode刷题day53
LeetCode刷题day53原创 2022-03-20 14:58:29 · 1866 阅读 · 5 评论 -
LeetCode刷题day52
LeetCode刷题day52原创 2022-03-19 15:20:48 · 1006 阅读 · 6 评论 -
LeetCode刷题day51
LeetCode刷题day51原创 2022-03-18 15:36:23 · 957 阅读 · 2 评论 -
LeetCode刷题day50
LeetCode刷题day50原创 2022-03-15 08:04:24 · 558 阅读 · 2 评论 -
LeetCode刷题day49
LeetCode刷题day49原创 2022-03-13 14:04:06 · 6255 阅读 · 10 评论 -
LeetCode刷题day48
LeetCode刷题day48原创 2022-03-11 14:56:52 · 1645 阅读 · 2 评论 -
LeetCode刷题day47
LeetCode刷题day47原创 2022-03-10 14:08:15 · 1437 阅读 · 6 评论 -
LeetCode刷题day46
LeetCode刷题day46原创 2022-03-07 22:43:59 · 651 阅读 · 10 评论 -
LeetCode刷题day45
LeetCode刷题day45原创 2022-03-03 11:45:37 · 601 阅读 · 0 评论 -
LeetCode刷题day44
LeetCode刷题day44原创 2022-03-01 14:27:59 · 838 阅读 · 0 评论 -
LeetCode刷题day43
LeetCode刷题day43原创 2022-01-20 17:07:38 · 5120 阅读 · 0 评论 -
LeetCode刷题day42
LeetCode刷题day42原创 2022-01-19 15:46:07 · 215 阅读 · 0 评论 -
LeetCode刷题day41
LeetCode刷题day41原创 2021-12-24 22:38:48 · 2941 阅读 · 0 评论 -
LeetCode刷题day40
LeetCode刷题100天计划第40天原创 2021-12-23 15:26:18 · 380 阅读 · 0 评论 -
LeetCode刷题day39
今日刷题重点—构造二叉树106. 从中序与后序遍历序列构造二叉树根据一棵树的中序遍历与后序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出中序遍历 inorder = [9,3,15,20,7]后序遍历 postorder = [9,15,7,20,3]返回如下的二叉树: 3 / \ 9 20 / \ 15 7思路分析中序和后序构建树的思路:以后序最后一个节点为分割点,对中序进行分割,分割成左中序和右中序;之后根据左中序和右中序的长原创 2021-12-15 21:51:54 · 1321 阅读 · 1 评论 -
LeetCode刷题day38
今日刷题重点—求树左下角值+二叉树满足条件的路径之和.513. 找树左下角的值给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。假设二叉树中至少有一个节点。示例 1:输入: root = [2,1,3]输出: 1示例 2:输入: [1,2,3,4,null,5,6,null,null,7]输出: 7思路分析这道题用层次遍历最简单了,不过我们先试下递归法.我们分析以下题目要求:寻找最底层最左边的节点.我们很容易想到一直向左递归,最后那个节点不就是原创 2021-12-10 18:17:34 · 451 阅读 · 0 评论 -
LeetCode刷题day37
今日刷题重点–二叉树的路径以及左/右叶子之和.257. 二叉树的所有路径给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。叶子节点 是指没有子节点的节点。示例 1:输入:root = [1,2,3,null,5]输出:["1->2->5","1->3"]示例 2:输入:root = [1]输出:["1"]思路分析这道题要求从根节点到叶子的路径所以需要先序遍历,这样方便父节点指向孩子节点.因为找的是所有叶子节点的路径,所有递归原创 2021-12-10 16:52:58 · 786 阅读 · 0 评论 -
LeetCode刷题day36
今日刷题重点—平衡二叉树和完全二叉树222. 完全二叉树的节点个数给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h2^h2h 个节点。示例 1:输入:root = [1,2,3,4,5,6]输出:6示例 2:输入:root = []输出:0示例 3:输入:root = [1]原创 2021-12-09 22:06:59 · 419 阅读 · 0 评论 -
LeetCode刷题day35
今日刷题重点—二叉树的深度104. 二叉树的最大深度给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。方法一:递归(后序)递归三要素:参数和返回值:参数就是树的根节点,返回值:树的深度结束条件:如果为空节点NULL,就返回0,表示高度为0原创 2021-12-06 22:04:38 · 142 阅读 · 0 评论 -
LeetCode刷题day34
今日刷题重点—二叉树的对称性226. 翻转二叉树翻转一棵二叉树。示例:输入: 4 / \ 2 7 / \ / \1 3 6 9输出: 4 / \ 7 2 / \ / \9 6 3 1思路分析反转二叉树:本质就是:把每一个结点的左右孩子互换一下,除了叶子结点所有的都要进行这样的操作.方法一:递归法(以先序为例)递归三要素递归参数:每次要交换的根节点(交换的是其左右节点)结束条件:当原创 2021-12-05 10:59:44 · 512 阅读 · 0 评论 -
LeetCode刷题day33
今日刷题重点—二叉树的层次遍历102. 二叉树的层序遍历给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。示例:二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层序遍历结果:[ [3], [9,20], [15,7]]思路分析层序遍历二叉树,就是从左到右一层一层的去遍历二叉树.我们需要一个队列来完成,队列先进先出,符合一层一层遍历的逻原创 2021-12-05 09:29:44 · 592 阅读 · 0 评论 -
LeetCode刷题day32
今日刷题重点–二叉树的递归+迭代遍历144. 二叉树的前序遍历给你二叉树的根节点 root ,返回它节点值的 前序 遍历。示例 1:输入:root = [1,null,2,3]输出:[1,2,3]示例 2:输入:root = []输出:[]示例 3:输入:root = [1]输出:[1]其他相似问题145. 二叉树的后序遍历94. 二叉树的中序遍历1.递归//递归的做法class Solution { public: void traverse(TreeNod原创 2021-12-02 19:35:57 · 343 阅读 · 0 评论 -
LeetCode刷题day31
239. 滑动窗口最大值给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释: [1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7 31 3 [-1 -3原创 2021-12-01 16:27:32 · 395 阅读 · 0 评论 -
LeetCode刷题day30
今日刷题重点:栈1047. 删除字符串中的所有相邻重复项给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在 S 上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。示例:输入:"abbaca"输出:"ca"解释:例如,在 “abbaca” 中,我们可以删除 “bb” 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 “aaca”,其中又只有 “aa” 可以执行重复项删除操原创 2021-11-30 21:44:25 · 183 阅读 · 0 评论 -
LeetCode刷题day29
232. 用栈实现队列请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回 true ;否则,返回 false输入:["MyQueue", "push", "push", "peek", "pop", "empty原创 2021-11-29 10:31:01 · 352 阅读 · 0 评论 -
LeetCode刷题day28
今日练习内容:KMP算法剑指 Offer 58 - II. 左旋转字符串字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。示例 1:输入: s = "abcdefg", k = 2输出: "cdefgab"示例 2:输入: s = "lrloseumgh", k = 6输出: "umghlrlose"方法一直接进行字符串截取,然后拼接原创 2021-11-25 22:13:35 · 156 阅读 · 0 评论