自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

保持对编程的热情!

给自己不断地创造一些足够困难但是又有办法完成的挑战!

  • 博客(24)
  • 收藏
  • 关注

原创 LeetCode-90. 子集 II

给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。示例 1:输入:nums = [1,2,2]输出:[[],[1],[1,2],[1,2,2],[2],[2,2]]示例 2:输入:nums = [0]输出:[[],[0]]提示:1 <= nums.length <= 10-10 <= nums[i] <= 10使用剪枝...

2021-03-31 21:23:13 49

原创 LeetCode-190. 颠倒二进制位

颠倒给定的 32 位无符号整数的二进制位。提示:请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。在 Java 中,编译器使用二进制补码记法来表示有符号整数。因此,在上面的示例 2中,输入表示有符号整数 -3,输出表示有符号整数 -1073741825。进阶:如果多次调用这个函数,你将如何优化你的算法?示例 1:输...

2021-03-30 10:01:53 127

原创 LeetCode-61. 旋转链表

给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动k个位置。示例 1:输入:head = [1,2,3,4,5], k = 2输出:[4,5,1,2,3]示例 2:输入:head = [0,1,2], k = 4输出:[2,0,1]提示:链表中节点的数目在范围 [0, 500] 内-100 <= Node.val <= 1000 <= k <= 2 * 109注意2个特殊情况,整除和k等于0的情况,不需要做任何移动...

2021-03-27 22:51:30 74

原创 LeetCode-82. 删除排序链表中的重复元素 II

存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中没有重复出现的数字。返回同样按升序排列的结果链表。示例 1:输入:head = [1,2,3,3,4,4,5]输出:[1,2,5]示例 2:输入:head = [1,1,1,2,3]输出:[2,3]提示:链表中节点数目在范围 [0, 300] 内-100 <= Node.val <= 100题目数据保证链表已经按升序排列方...

2021-03-25 22:39:47 125

原创 LeetCode-1561. 你可以获得的最大硬币数目

有 3n 堆数目不一的硬币,你和你的朋友们打算按以下方式分硬币:每一轮中,你将会选出 任意 3 堆硬币(不一定连续)。Alice 将会取走硬币数量最多的那一堆。你将会取走硬币数量第二多的那一堆。Bob 将会取走最后一堆。重复这个过程,直到没有更多硬币。给你一个整数数组 piles ,其中 piles[i] 是第 i 堆中硬币的数目。返回你可以获得的最大硬币数目。示例 1:输入:piles = [2,4,1,2,7,8]输出:9解释:选出 (2, 7, 8) ,Alice .

2021-03-23 16:32:32 173

原创 LeetCode-180. 连续出现的数字

表:Logs+-------------+---------+| Column Name | Type |+-------------+---------+| id | int || num | varchar |+-------------+---------+id 是这个表的主键。编写一个 SQL 查询,查找所有至少连续出现三次的数字。返回的结果表中的数据可以按 任意顺序 排列。查询结果格式如下面的例子所示:...

2021-03-22 23:58:13 96

原创 LeetCode-191. 位1的个数

编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。提示:请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。在 Java 中,编译器使用二进制补码记法来表示有符号整数。因此,在上面的示例 3中,输入表示有符号整数 -3。示例 1:输入:0000000000...

2021-03-22 11:32:35 58

原创 LeetCode-73. 矩阵置零

给定一个m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。进阶:一个直观的解决方案是使用 O(mn)的额外空间,但这并不是一个好的解决方案。一个简单的改进方案是使用 O(m+n) 的额外空间,但这仍然不是最好的解决方案。你能想出一个仅使用常量空间的解决方案吗?示例 1:输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2:输...

2021-03-21 10:48:46 112

原创 LeetCode-92. 反转链表 II

反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。说明:1 ≤m≤n≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL昨天做的忘记发博文了,注意一个异常情况,反转的时候需要自己建一个头结点的。#include <iostream>using namespace std;struct ListNo...

2021-03-19 09:45:51 110

原创 LeetCode-59. 螺旋矩阵 II

给你一个正整数n ,生成一个包含 1 到n2所有元素,且元素按顺时针顺序螺旋排列的n x n 正方形矩阵 matrix 。示例 1:输入:n = 3输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2:输入:n = 1输出:[[1]]提示:1 <= n <= 20思路与上题一致:#include <iostream>#include <vector>using namespace std;cl...

2021-03-16 23:34:47 109

原创 LeetCode-54. 螺旋矩阵

给你一个 m 行 n 列的矩阵matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。示例 1:输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例 2:输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]提示:m == matrix.lengthn == matrix[i].lengt...

2021-03-15 23:30:59 154

原创 LeetCode-178. 分数排名

编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。+----+-------+| Id | Score |+----+-------+| 1 | 3.50 || 2 | 3.65 || 3 | 4.00 || 4 | 3.85 || 5 | 4.00 || 6 | 3.65 |+----+-------+例如,根据上述给定的Sco...

2021-03-14 17:19:32 130

原创 LeetCode-705. 设计哈希集合

不使用任何内建的哈希表库设计一个哈希集合(HashSet)。实现 MyHashSet 类:void add(key) 向哈希集合中插入值 key 。bool contains(key) 返回哈希集合中是否存在这个值 key 。void remove(key) 将给定值 key 从哈希集合中删除。如果哈希集合中没有这个值,什么也不做。示例:输入:["MyHashSet", "add", "add", "contains", "contains", "add", "contains", .

2021-03-13 23:37:54 123

原创 LeetCode-331. 验证二叉树的前序序列化

序列化二叉树的一种方法是使用前序遍历。当我们遇到一个非空节点时,我们可以记录下这个节点的值。如果它是一个空节点,我们可以使用一个标记值记录,例如 #。 _9_ / \ 3 2 / \ / \4 1 # 6/ \ / \ / \# # # # # #例如,上面的二叉树可以被序列化为字符串 "9,3,4,#,#,1,#,#,2,#,6,#,#",其中 # 代表一个空节点。给定一串以逗号分隔的序列,验证它是否是正确的二叉树的前序序列化。编...

2021-03-12 23:05:00 160

原创 LeetCode-596. 超过5名学生的课

有一个courses 表 ,有: student(学生) 和 class (课程)。请列出所有超过或等于5名学生的课。例如,表:+---------+------------+| student | class |+---------+------------+| A | Math || B | English || C | Math || D | Biology || E ...

2021-03-11 23:52:04 113

原创 LeetCode-1370. 上升下降字符串

给你一个字符串s,请你根据下面的算法重新构造字符串:从 s中选出 最小的字符,将它 接在结果字符串的后面。从 s剩余字符中选出最小的字符,且该字符比上一个添加的字符大,将它 接在结果字符串后面。重复步骤 2 ,直到你没法从 s中选择字符。从 s中选出 最大的字符,将它 接在结果字符串的后面。从 s剩余字符中选出最大的字符,且该字符比上一个添加的字符小,将它 接在结果字符串后面。重复步骤 5,直到你没法从 s中选择字符。重复步骤 1 到 6 ,直到 s中...

2021-03-11 21:07:44 69

原创 LeetCode-197. 上升的温度

表 Weather+---------------+---------+| Column Name | Type |+---------------+---------+| id | int || recordDate | date || temperature | int |+---------------+---------+id 是这个表的主键该表包含特定日期的温度信息编写一个 SQL 查询,来查找与之前(昨天...

2021-03-10 23:07:36 73

原创 LeetCode-1637. 两点之间不包含任何点的最宽垂直面积

给你n个二维平面上的点 points ,其中points[i] = [xi, yi],请你返回两点之间内部不包含任何点的最宽垂直面积的宽度。垂直面积 的定义是固定宽度,而 y 轴上无限延伸的一块区域(也就是高度为无穷大)。 最宽垂直面积为宽度最大的一个垂直面积。请注意,垂直区域边上的点不在区域内。示例 1:​输入:points = [[8,7],[9,9],[7,4],[9,7]]输出:1解释:红色区域和蓝色区域都是最优区域。示例 2:输入:point...

2021-03-10 22:26:54 152

原创 LeetCode-1047. 删除字符串中的所有相邻重复项

给出由小写字母组成的字符串S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在 S 上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。示例:输入:"abbaca"输出:"ca"解释:例如,在 "abbaca" 中,我们可以删除 "bb" 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 "aaca",其中又只有 "aa" 可以执行重复项删除操作,所以最后的字符串为 "ca"。提示:...

2021-03-09 23:40:05 98

原创 LeetCode-1179. 重新格式化部门表

部门表Department:+---------------+---------+| Column Name | Type |+---------------+---------+| id | int || revenue | int || month | varchar |+---------------+---------+(id, month) 是表的联合主键。这个表格有关于每个部门每月收入的信息。月份...

2021-03-08 23:42:00 117

原创 LeetCode-183. 从不订购的客户

某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。Customers 表:+----+-------+| Id | Name |+----+-------+| 1 | Joe || 2 | Henry || 3 | Sam || 4 | Max |+----+-------+Orders 表:+----+------------+| Id | CustomerId |+----+----...

2021-03-07 22:32:57 114

原创 LeetCode-503. 下一个更大元素 II

给定一个循环数组(最后一个元素的下一个元素是数组的第一个元素),输出每个元素的下一个更大元素。数字 x 的下一个更大的元素是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。如果不存在,则输出 -1。示例 1:输入: [1,2,1]输出: [2,-1,2]解释: 第一个 1 的下一个更大的数是 2;数字 2 找不到下一个更大的数;第二个 1 的下一个最大的数需要循环搜索,结果也是 2。注意: 输入数组的长度不会超过 10000。我们先..

2021-03-07 22:01:43 81

原创 LeetCode-626. 换座位

小美是一所中学的信息科技老师,她有一张 seat座位表,平时用来储存学生名字和与他们相对应的座位 id。其中纵列的id是连续递增的小美想改变相邻俩学生的座位。你能不能帮她写一个 SQL query来输出小美想要的结果呢?示例:+---------+---------+| id | student |+---------+---------+| 1 | Abbot || 2 | Doris || 3 | Emer...

2021-03-03 21:34:26 143 1

原创 LeetCode-778. 水位上升的泳池中游泳

在一个 N x N 的坐标方格grid 中,每一个方格的值 grid[i][j] 表示在位置 (i,j) 的平台高度。现在开始下雨了。当时间为t时,此时雨水导致水池中任意位置的水位为t。你可以从一个平台游向四周相邻的任意一个平台,但是前提是此时水位必须同时淹没这两个平台。假定你可以瞬间移动无限距离,也就是默认在方格内部游动是不耗时的。当然,在你游泳的时候你必须待在坐标方格里面。你从坐标方格的左上平台 (0,0) 出发。最少耗时多久你才能到达坐标方格的右下平台(N-1, N-1)?...

2021-03-01 22:52:02 176

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除