![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
文章平均质量分 57
刷题
LYFlied
这个作者很懒,什么都没留下…
展开
-
局部反转链表(面试常考题)
一、题目描述反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。说明:1 ≤ m ≤ n ≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL二、思路分析局部反转链表是反转链表的升级版。反转链表反转链表,就是把每个结点 next 指针的指向给反过来就行了需要用到三个指针,它们分别指向目标结点(cur)、目标结点的前驱结点(pre)原创 2021-03-12 13:46:25 · 1456 阅读 · 0 评论 -
多指针法反转链表(面试常考题)
一、题目描述定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL提示:0 <= 节点个数 <= 5000二、思路分析反转链表,就是把每个结点 next 指针的指向给反过来就行了需要用到三个指针,它们分别指向目标结点(cur)、目标结点的前驱结点(pre)、目标结点的后继结点(next)。cur.原创 2021-03-12 13:11:54 · 608 阅读 · 1 评论 -
删除链表的倒数第 N 个结点(面试常见题)
一、题目描述给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]提示:链表中结点的数目为 sz1 <= sz <= 300 <= Node.val <= 1001 <= n &l原创 2021-03-11 23:16:30 · 710 阅读 · 0 评论 -
删除二叉搜索树中的节点(面试常见题)
前端面试题,面试常考题,编程题一、题目描述给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。一般来说,删除节点可分为两个步骤:首先找到需要删除的节点;如果找到了,删除它。说明: 要求算法时间复杂度为 O(h),h 为树的高度。原创 2021-03-09 21:04:48 · 1022 阅读 · 0 评论 -
二叉搜索树中的插入操作(面试常见题)
一、题目描述给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 ,新值和原始二叉搜索树中的任意节点值都不同。注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 你可以返回 任意有效的结果 。示例1:输入:root = [4,2,7,1,3], val = 5输出:[4,2,7,1,3,5]解释:另一个满足题目要求可以通过的树是:示例2:输入:root = [40,20,60,10,30,50,70原创 2021-03-09 20:21:08 · 786 阅读 · 0 评论 -
LeetCode739. 每日温度(栈问题进阶)|刷题打卡
一、题目描述请根据每日 气温 列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用 0 来代替。例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]。提示:气温 列表长度的范围是 [1, 30000]。每个气温的值的均为华氏度,都是在 [30, 100] 范围内的整数。二、思路分析暴力解法看到这个题原创 2021-03-06 17:00:40 · 703 阅读 · 0 评论 -
LeetCode20. 有效的括号(面试高频题)|刷题打卡
一、题目描述给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例 2:输入:s = "()[]{}"输出:true示例 3:输入:s = "(]"输出:false示例 4:输入:s = "([)]"输出:false示例 5:输入:s = "{[]}"输出:true提示:1原创 2021-03-06 15:23:27 · 640 阅读 · 0 评论 -
LeetCode15. 三数之和|刷题打卡
前端面试题,编程题,三数之和给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。原创 2021-03-04 21:18:38 · 599 阅读 · 2 评论 -
LeetCode88. 合并两个有序数组|刷题打卡
前端面试题,面试常考题,编程题,手写算法。一、题目描述给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 的空间大小等于 m + n,这样它就有足够的空间保存来自 nums2 的元素。原创 2021-03-04 21:17:42 · 617 阅读 · 2 评论 -
LeetCode1.两数之和|刷题打卡
前端面试题,面试常考题,编程题,手写算法一、题目描述给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。你可以按任意顺序返回答案。原创 2021-03-04 21:16:37 · 620 阅读 · 1 评论 -
LeetCode142. 环形链表 II|刷题打卡
一、题目描述给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。说明: 不允许修改给定的链表。进阶:你能用 O(1)(即,常量)内存解决此问题吗?示例 1:输入:head = [3,2,0,-4], pos = 1输出:返回索引为 1 的链表节点解释:原创 2021-03-04 21:15:03 · 628 阅读 · 2 评论 -
LeetCode141.环形链表[立flag]|刷题打卡
前端面试题,面试常考题,编程题,环形链表给定一个链表,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。如果链表中存在环,则返回 true 。 否则,返回 false 。原创 2021-03-04 21:13:16 · 635 阅读 · 1 评论