首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
LeetCode
Always_positive
创建于2021-05-11
订阅专栏
本专栏主要是记录LeetCode个人的解题过程和学习经验教训
等 32 人订阅
共152篇文章
创建于2021-05-11
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
LeetCode——最小栈(辅助栈)
题目描述 解题思路 初始化 push pop top getMin AC代码 题目反思最小栈和用栈模拟队列等都是一类题目,核心就是借助辅助栈来帮助实现想要的功能。
(二刷)LeetCode——最大连续1的个数 III(滑动窗口)
题目描述 解题思路 滑动窗口是这道题目的核心解题思想,既然有滑动窗口少不了的是左右指针和最大值。 定义一个数组用来存储0和1出现的次数。 右指针是核心循环条件,当右指针走到数组的长度的位置的时候,此时
LeetCode——环形链表(快慢指针)
题目描述 解题思路 题目反思环形链表这个题目最容易出现错误的地方就是死循环的问题,所以我们要注意防止出现死循环,关键的思想就在于如果一个链表是环形链表,一个指针走得快,另一个指针走得慢,那么这两个指针
LeetCode——数组中重复的数据(使用符号表示是否出现过)
题目描述 题目核心 数组中的元素只出现过一次或者两次。 数组中每个元素的值都在1到N之间,其中N为数组的长度。 解题不得使用其他的额外空间,必须在nums数组本身上进行操作。 解题思路 AC代码 题目
LeetCode——实现strStr()(KMP算法)
题目描述 解题思路 题目反思 实现strStr()这个题目的本质考查KMP算法,也是前端的indexOf这个API的底层实现原理,因此这道题无论是原理上还是从面试角度来看都是非常重要的一道题目。
LeetCode——搜索插入位置(二分查找)
题目描述 解题思路 题目反思 二分查找的题目判别是已经排序好的数组。 使用移位操作可以帮助我们求中位数。 二分查找这类题目最好按类别进行做,因为都是一个思路,方便我们总结经验。
LeetCode——组合总和(DFS)
题目描述 解题思路 第一个参数是遍历的起始位置,这个参数存在的意义在于防止重复遍历,只添加这个元素后面的元素,这个元素前面的不再遍历。 第二个参数是临时数组,用来记录一次遍历的数组。 第三个参数是临时
LeetCode——二叉树的最大深度(递归法+层序遍历)
题目描述 解题思路 题目反思 参考链接 剑指Offer——二叉树的深度(JS实现二叉树的最大深度的解题方法有很多种,但是我们要做的是使用通用的思路来求解,比如使用层序遍历的方法首先用数组保存整个树的所
LeetCode——二进制求和(字符串求和法)
题目描述 解题思路 题目反思本题的核心解题思路和字符串相加、两数相加等题目高度类似,都是给出一个字符串,求字符串的和,我们可以从字符串的最后一个字符算起,将一个字符转换为一个数字可以通过减字符0来实现
LeetCode——用栈实现队列(入队栈+出队栈)
题目描述 解题思路 步骤1:函数初始化 步骤2:模拟入队操作 步骤3:模拟出队操作 步骤4:返回队首操作 步骤5:判断队列是否为空操作 AC代码 题目反思
LeetCode——在排序数组中查找元素的第一个和最后一个位置(二分查找核心模板)
题目描述 解题思路 定义二分查找中查找左边界的函数,这个函数能够返回左边界的下标,如果数组中有目标元素返回第一个下标,如果数组中的所有元素都小于目标元素,返回的是数组的长度,如果数组中的所有元素都比目
LeetCode——最长回文串(Set + 打牌思路)
这是我参与11月更文挑战的第22天,活动详情查看:2021最后一次更文挑战 题目描述 解题思路 创建一个Set。 遍历每一个字符,如果这个字符出现在了集合中,则将这个字符从集合中删去,并且给sum+2
二刷--从上到下打印二叉树 III(层序递归+反转)
这是我参与11月更文挑战的第19天,活动详情查看:2021最后一次更文挑战 题目描述 解题思路 实现方式一:递归法进行层序遍历然后根据层次的奇偶进行反转 方式2:将节点加入数组时判断层次是奇数还是偶数
LeetCode——岛屿的最大面积(DFS)
这是我参与11月更文挑战的第18天,活动详情查看:2021最后一次更文挑战 题目描述 解题思路 定义二维数组的行数,即grid的长度。 定义二维数组的列数,即grid[0]的长度。 二层循环遍历每一个
LeetCode——比较版本号(分割-去零-填零-比较)
这是我参与11月更文挑战的第15天,活动详情查看:2021最后一次更文挑战 题目描述 解题思路 首先使用split将元素根据标点符号点,进行分割。 对数组中的每一个元素进行去零操作,并不是所有的元素都
LeetCode——K个一组翻转链表(三指针)
这是我参与11月更文挑战的第7天,活动详情查看:2021最后一次更文挑战 题目描述 解题思路 首先判断传入的链表的长度是否小于K,如果小于K则返回原链表。 如果传入的链表的长度大于等于k,则继续下面的
LeetCode——Excel表列名称(进制转换)
这是我参与11月更文挑战的第5天,活动详情查看:2021最后一次更文挑战 题目描述 解题思路 定义一个存储结果的数组。 以输入的数字为循环条件,首先将数字-1,之所以要减1,是因为题目中字母和数字的对
LeetCode——合并两个有序数组(双指针)
题目描述 解题思路 首先使用splice方法,将nums1和nums2指定位置之后的无关元素去除。 如果二者其中有一个是空数组,则直接push到nums1中。 定义双指针,进行依次比较,小的放到num
LeetCode——二叉树的层序遍历(递归与非递归)
题目描述 递归实现 非递归实现 题目反思 使用递归的层序遍历和使用迭代的层序遍历都需要借助层数level这个变量。 递归的思想和队列的思想值得我们学习。
二刷--无重复字符的最长子串
题目描述 解题思路 AC代码 题目反思 学会使用哈希表作为滑动窗口的载体。 只要是涉及到窗口的长度,一定要考虑到左右指针之间的关系。
下一页