首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
leetcode解题记录
易凡
创建于2021-06-01
订阅专栏
https://github.com/Ivonhoe/LeetCode
暂无订阅
共12篇文章
创建于2021-06-01
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
[LeetCode剑指 Offer 53 - II. 0~n-1中缺失的数字 ] | 刷题打卡
一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 最容易想到的思路,遍历数组,比较当前值和前一个值的差值,大于1的说明缺了一个数。没找到的说明缺少的是最后一个。…
[LeetCode874. 模拟行走机器人] | 刷题打卡
机器人在一个无限大小的 XY 网格平面上行走,从点 (0, 0) 处开始出发,面向北方。该机器人可以接收以下三种类型的命令 commands : 在网格上有一些格子被视为障碍物 obstacles 。第 i 个障碍物位于网格点 obstacles[i] = (xi, yi) 。…
[LeetCode876. 链表的中间结点] | 刷题打卡
给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 最简单的思路,先遍历链表,数一下有多少个结点,然后再遍历一次,这次只到链表一半的地方,返回中间结点。 双指针的思路,还是可以看成两个人一起走路,两个人一起出发,一个人的速…
[LeetCode19. 删除链表的倒数第 N 个结点] | 刷题打卡
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 删除链表的结点比较简单,但是这里要删除倒数的第N个,都知道题中的链表是单向的,这里想要删除倒数的第N个有两种思路,一种是利用栈,将链表全部入栈,然后出栈topN个,然后再把第N个删除。 另一种是类似快慢走的解法…
[LeetCode21.合并两个有序链表] | 刷题打卡
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 两种解法,递归和迭代。 如果 l1 或者 l2 一开始就是空链表 ,那么没有任何操作需要合并,所以我们只需要返回非空链表。否则,我们要判断 l1 和 l2 哪一个链表的头节点的值更…
[LeetCode206. 反转链表] | 刷题打卡
反转一个单链表。 你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 这题非常高频。如果面试的时候遇到做不出来好像很丢人的样子。。。 看题中提示,这题一般有两种解法,递归和迭代。所谓递归和迭代的在翻转数组时变换的差别在于,是从head开始翻转,还是从tail开始翻转。 先…
[LeetCode112. 路径总和] | 刷题打卡
给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。 叶子节点 是指没有子节点的节点。 看到根节点到叶子节点的路径,首先想到dfs。套用dfs的模板,…
[LeetCode102. 二叉树的层序遍历] | 刷题打卡
给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 层序遍历首先想到使用队列这个数据结构,根据题中要求的输出结果,需要输出一个二维数组,每行对应二叉树中每层的数据结构。这里在出队列的处理上稍微有点差别,在求二叉树深度的题中也讲到过,这里…
[LeetCode107. 二叉树的层序遍历 II] | 刷题打卡
给定一个二叉树,返回其节点值自底向上的层序遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 这题和102. 二叉树的层序遍历非常相似。 如果选择投机的办法,直接使用102的代码做一个微调就可以了,102的要求是自顶向下,本题的要求是自底向上。只需要在添加行数据…
[LeetCode110. 平衡二叉树] | 刷题打卡
给定一个二叉树,判断它是否是高度平衡的二叉树。 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 有自顶向下和自底向上两种思路,可以分别看成先序遍历和后续遍历。 空间复杂度 O(N): 最差情况下(树退化为链表时),系统递归需要使用 O(N) 的栈空间。 自底向…
[LeetCode104. 二叉树的最大深度] | 刷题打卡
给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 这是一道easy题,二叉树的深度肯定要遍历,要遍历无外乎dfs和bfs。 先看dfs,单看根节点的深度,是左子节点的深度和右子节点深度的最大值再加…
[LeetCode207. 课程表] | 刷题打卡
你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则…