
我的leetcode刷题
东南亚季风
很菜的学生一枚
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LeetCode184、185:部门工资的相关查询
LeetCode184:部门工资最高的员工一、题目描述Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id。+----+-------+--------+--------------+| Id | Name | Salary | DepartmentId |+----+-------+--------+--------------+| 1 | Joe | 70000 | 1 || 2 | Jim |原创 2020-12-20 14:24:05 · 156 阅读 · 0 评论 -
LeetCode178:分数排名
一、题目描述编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。+----+-------+| Id | Score |+----+-------+| 1 | 3.50 || 2 | 3.65 || 3 | 4.00 || 4 | 3.85 || 5 | 4.00 || 6 | 3.65 |+----+-------+例如,根据上述给原创 2020-12-18 19:18:10 · 190 阅读 · 0 评论 -
LeetCode176: 第二高的薪水
一、题目描述SQL架构编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。+---------------------原创 2020-12-14 11:09:05 · 186 阅读 · 0 评论 -
LeetCode175:组合两个表
一、题目描述SQL架构表1: Person+-------------+---------+| 列名 | 类型 |+-------------+---------+| PersonId | int || FirstName | varchar || LastName | varchar |+-------------+---------+PersonId 是上表主键表2: Address+-------------+---------原创 2020-12-14 10:03:45 · 170 阅读 · 0 评论 -
LeetCode430:扁平化多级双向链表
一、题目描述 多级双向链表中,除了指向下一个节点和前一个节点指针之外,它还有一个子链表指针,可能指向单独的双向链表。这些子列表也可能会有一个或多个自己的子项,依此类推,生成多级数据结构,如下面的示例所示。 &ensp给你位于列表第一级的头节点,请你扁平化列表,使所有结点出现在单级双链表中。示例 1:输入:head = [1,2,3,4,5,6,null,null,null,7,8,9,10,null,null,11,12]输出:[1,2,3,7,8,11,12,9,10,4,5,原创 2020-12-13 21:03:40 · 108 阅读 · 0 评论 -
LeetCode138:复制带随机指针的链表
一、题目描述 给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。 要求返回这个链表的深拷贝。 我们用一个由 n 个节点组成的链表来表示输入/输出中的链表。每个节点用一个 [val, random_index] 表示:val:一个表示 Node.val 的整数。random_index:随机指针指向的节点索引(范围从 0 到 n-1);如果不指向任何节点,则为 null 。示例 1:输入:head = [[7,null],[13,原创 2020-12-13 17:16:59 · 118 阅读 · 0 评论 -
LeetCode61:旋转链表
一、题目描述 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4->5->1->2->3->NULL示例 2:输入: 0->1-原创 2020-12-12 23:39:04 · 133 阅读 · 0 评论 -
LootCode21: 合并两个有序链表
一、题目描述将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4二、解题思路先判断有无空链表if(l1==nullptr) return l2;if(l2==nullptr) return l1;确定合并链表的头结点(整数值小的结点)ListNode* head;l1->val>l原创 2020-12-12 22:51:05 · 135 阅读 · 0 评论 -
LeetCode234:回文链表
一、题目描述 请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(i原创 2020-12-12 14:31:43 · 124 阅读 · 0 评论 -
LeetCode328:奇偶链表
一、题目描述 给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。 请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1->3->5->2->4->NULL示例 2:输入: 2->1->3->原创 2020-12-12 14:17:21 · 129 阅读 · 0 评论 -
LeetCode203:移除链表元素
一、题目描述 删除链表中等于给定值 val 的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), ne原创 2020-12-12 13:45:00 · 133 阅读 · 0 评论 -
LeetCode206:反转链表
一、题目描述 反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶: 你可以迭代或递归地反转链表。/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val原创 2020-12-12 13:29:17 · 138 阅读 · 0 评论 -
LeetCode141、142、160:神奇的双指针在链表中的应用
这里写目录标题141:环形链表1一、题目描述二、解题思路三、我的代码142:环形链表2一、题目描述二、解题思路三、我的代码160:相交链表一、题目描述二、解题思路三、我的代码141:环形链表1一、题目描述 给定一个链表,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行原创 2020-12-09 13:44:38 · 132 阅读 · 0 评论 -
LeetCode707:设计链表(单链表)
一、题目描述 设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。 在链表类中实现这些功能: get(index):获取链表中第 index 个节点的值。如果索引无效,则返回-1。 addAtHead(val):在链表的第一个元素之原创 2020-12-08 22:37:27 · 161 阅读 · 0 评论 -
LeetCode19:删除链表的倒数第n个节点
一、题目描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 说明:给定的 n 保证是有效的。/** * Definition for singly-linked list. * struct ListNode { * int val; *原创 2020-12-08 21:05:02 · 179 阅读 · 0 评论 -
LeetCode18:四数之和
一、题目描述给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。注意:答案中不可以包含重复的四元组。示例:给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。满足要求的四元组集合为:[[-1, 0, 0, 1],[-2, -1, 1, 2],[-2, 0, 0, 2]]cla原创 2020-12-08 13:38:13 · 205 阅读 · 0 评论 -
LeetCode17:电话号码的字母组合(C++)
力扣刷题:电话号码的字母组合加粗样式欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示原创 2020-12-07 20:22:01 · 464 阅读 · 1 评论