![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
边界流浪者
三流程序员,边界流浪者,大叔
展开
-
LeetCode-110. 平衡二叉树
输入:root = [1,2,2,3,3,null,null,4,4]输入:root = [3,9,20,null,null,15,7]一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。给定一个二叉树,判断它是否是高度平衡的二叉树。树中的节点数在范围 [0, 5000] 内。输入:root = []...原创 2022-08-26 11:04:26 · 300 阅读 · 1 评论 -
LeetCode-350. 两个数组的交集 II
给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。如果 nums2 的元素存储在磁盘上,内存是有限的,并且你不能一次加载所有的元素到内存中,你该怎么办?输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输入:nums1 = [1,2,2,1], nums2 = [2,2]如果 nums1 的大小比 nums2 小,哪种方法更优?...原创 2022-08-11 18:39:47 · 321 阅读 · 0 评论 -
LeetCode-636. 函数的独占时间
输入:n = 1, logs = ["0:start:0","0:start:2","0:end:5","0:start:6","0:end:6","0:end:7"]输入:n = 2, logs = ["0:start:0","0:start:2","0:end:5","1:start:6","1:end:6","0:end:7"]输入:n = 2, logs = ["0:start:0","0:start:2","0:end:5","1:start:7","1:end:7","0:end:8"]...原创 2022-08-07 22:55:37 · 286 阅读 · 0 评论 -
LeetCode-622. 设计循环队列
代码】LeetCode-622. 设计循环队列。原创 2022-08-05 15:32:39 · 125 阅读 · 0 评论 -
LeetCode-1796. 字符串中第二大的数字
给你一个混合字符串s,请你返回s中第二大的数字,如果不存在第二大的数字,请你返回-1。解释出现在s中的数字包括[1,2,3]。第二大的数字是2。解释出现在s中的数字只包含[1]。输入s="dfa12321afd"混合字符串由小写英文字母和数字组成。s只包含小写英文字母和(或)数字。输入s="abc1111"...原创 2022-08-02 13:49:31 · 181 阅读 · 0 评论 -
LeetCode-48. 旋转图像
先上下翻转,再按照对角线翻转。原创 2022-08-01 00:27:27 · 90 阅读 · 0 评论 -
LeetCode-1161. 最大层内元素和
输入root=[989,null,10250,98693,-89388,null,null,null,-32127]设根节点位于二叉树的第1层,而根节点的子节点位于第2层,依此类推。请返回层内元素之和最大的那几层(可能只有一层)的层号,并返回其中最小的那个。输入root=[1,7,0,7,-8,null,null]所以我们返回第2层的层号,它的层内元素之和最大。第3层各元素之和为7+-8=-1,第2层各元素之和为7+0=7,...原创 2022-07-31 21:36:55 · 70 阅读 · 0 评论 -
LeetCode-729. 我的日程安排表 I
实现一个 MyCalendar 类来存放你的日程安排。如果要添加的日程安排不会造成 重复预订 ,则可以存储这个新的日程安排。当两个日程安排有一些时间上的交叉时(例如两个日程安排都在同一时间内),就会产生 重复预订 。日程可以用一对整数 start 和 end 表示,这里的时间是半开区间,即 [start, end), 实数 x 的范围为, start ...原创 2022-07-09 12:13:32 · 133 阅读 · 0 评论 -
LeetCode-1279. 红绿灯路口
这是两条路的交叉路口。第一条路是 A 路,车辆可沿 1 号方向由北向南行驶,也可沿 2 号方向由南向北行驶。第二条路是 B 路,车辆可沿 3 号方向由西向东行驶,也可沿 4 号方向由东向西行驶。每条路在路口前都有一个红绿灯。红绿灯可以亮起红灯或绿灯。绿灯表示两个方向的车辆都可通过路口。红灯表示两个方向的车辆都不可以通过路口,必须等待绿灯亮起。两条路上的红绿灯不可以同时为绿灯。这意味着,当 A 路上的绿灯亮起时,B 路上的红灯会亮起;当 B 路上的绿灯亮起时,A 路上的红灯会亮起.开始时,A 路上的绿灯亮原创 2022-07-04 23:44:28 · 490 阅读 · 0 评论 -
LeetCode-1188. 设计有限阻塞队列
实现一个拥有如下方法的线程安全有限阻塞队列:BoundedBlockingQueue(int capacity) 构造方法初始化队列,其中capacity代表队列长度上限。void enqueue(int element) 在队首增加一个element. 如果队列满,调用线程被阻塞直到队列非满。int dequeue() 返回队尾元素并从队列中将其删除. 如果队列为空,调用线程被阻塞直到队列非空。int size() 返回当前队列元素个数。你的实现将会被多线程同时访问进行测试。每一个线程要么是一个只原创 2022-06-27 22:22:51 · 339 阅读 · 0 评论 -
LeetCode-515. 在每个树行中找最大值
给定一棵二叉树的根节点 root ,请找出该二叉树中每一层的最大值。示例1:输入: root = [1,3,2,5,3,null,9]输出: [1,3,9]示例2:输入: root = [1,2,3]输出: [1,3] 提示:二叉树的节点个数的范围是 [0,104]-231 ...原创 2022-06-24 22:01:20 · 77 阅读 · 0 评论 -
LeetCode-890. 查找和替换模式
你有一个单词列表 words 和一个模式 pattern,你想知道 words 中的哪些单词与模式匹配。如果存在字母的排列 p ,使得将模式中的每个字母 x 替换为 p(x) 之后,我们就得到了所需的单词,那么单词与模式是匹配的。(回想一下,字母的排列是从字母到字母的双射:每个字母映射到另一个字母,没有两个字母映射到同一个字母。)返回 words 中与给定模式匹配的单词列表。你可以按任何顺序返回答案。示例:输入:words = ["abc","deq","mee","aqq","dkd","ccc"],原创 2022-06-12 13:55:43 · 236 阅读 · 1 评论 -
LeetCode-1241. 每个帖子的评论数
给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像 3a 或 2[4] 的输入...原创 2022-06-07 22:32:54 · 95 阅读 · 0 评论 -
LeetCode-1241. 每个帖子的评论数
表Submissions 结构如下:+---------------+----------+| 列名 | 类型 |+---------------+----------+| sub_id | int || parent_id | int |+---------------+----------+上表没有主键, 所以可能会出现重复的行。每行可以是一个帖子或对该帖子的评论。如果是帖子的话,parent_id 就是 nul...原创 2022-05-29 22:48:46 · 99 阅读 · 0 评论 -
LeetCode-1809. 没有广告的剧集
Table: Playback+-------------+------+| Column Name | Type |+-------------+------+| session_id | int || customer_id | int || start_time | int || end_time | int |+-------------+------+该表主键为:session_id (剧集id)customer_id 是观看该剧集的观众id剧集播放时间包...原创 2022-05-27 22:22:52 · 170 阅读 · 0 评论 -
LeetCode-1435. 制作会话柱状图
表:Sessions+---------------------+---------+| Column Name | Type |+---------------------+---------+| session_id | int || duration | int |+---------------------+---------+session_id 是该表主键duration 是用户访问应用的时间, 以秒...原创 2022-05-08 17:13:50 · 110 阅读 · 0 评论 -
LeetCode-1633. 各赛事的用户注册率
用户表:Users+-------------+---------+| Column Name | Type |+-------------+---------+| user_id | int || user_name | varchar |+-------------+---------+user_id 是该表的主键。该表中的每行包括用户 ID 和用户名。注册表:Register+-------------+---------+| Column...原创 2022-05-06 00:24:06 · 281 阅读 · 0 评论 -
LeetCode-1294. 不同国家的天气类型
国家表:Countries+---------------+---------+| Column Name | Type |+---------------+---------+| country_id | int || country_name | varchar |+---------------+---------+country_id 是这张表的主键。该表的每行有 country_id 和 country_name 两列。天气表:Weather...原创 2022-05-05 23:10:29 · 253 阅读 · 0 评论 -
LeetCode-388. 文件的最长绝对路径
假设有一个同时存储文件和目录的文件系统。下图展示了文件系统的一个示例:这里将 dir 作为根目录中的唯一目录。dir 包含两个子目录 subdir1 和 subdir2 。subdir1 包含文件 file1.ext 和子目录 subsubdir1;subdir2 包含子目录 subsubdir2,该子目录下包含文件 file2.ext 。在文本格式中,如下所示(⟶表示制表符):dir⟶ subdir1⟶ ⟶ file1.ext⟶ ⟶ subsubdir1⟶ subdir2⟶ ⟶原创 2022-04-23 12:00:13 · 110 阅读 · 0 评论 -
LeetCode-608. 树节点
给定一个表tree,id 是树节点的编号,p_id是它父节点的id 。+----+------+| id | p_id |+----+------+| 1 | null || 2 | 1 || 3 | 1 || 4 | 2 || 5 | 2 |+----+------+树中每个节点属于以下三种类型之一:叶子:如果这个节点没有任何孩子节点。根:如果这个节点是整棵树的根,即没有父节点。内部节点:如果这个节点既不是叶子节点也不是根节点。...原创 2022-04-20 20:13:24 · 383 阅读 · 0 评论 -
LeetCode-804. 唯一摩尔斯密码词
国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串,比如:'a' 对应 ".-" ,'b' 对应 "-..." ,'c' 对应 "-.-." ,以此类推。为了方便,所有 26 个英文字母的摩尔斯密码表如下:[".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-",".原创 2022-04-10 21:43:33 · 167 阅读 · 0 评论 -
LeetCode-607. 销售员
表:SalesPerson+-----------------+---------+| Column Name | Type |+-----------------+---------+| sales_id | int || name | varchar || salary | int || commission_rate | int || hire_date | date |...原创 2022-04-10 17:45:27 · 107 阅读 · 0 评论 -
LeetCode-1511. 消费者下单频率
表: Customers+---------------+---------+| Column Name | Type |+---------------+---------+| customer_id | int || name | varchar || country | varchar |+---------------+---------+customer_id 是该表主键.该表包含公司消费者的信息.表: Product...原创 2022-03-20 17:17:54 · 139 阅读 · 0 评论 -
LeetCode-2072. 赢得比赛的大学
表: NewYork+-------------+------+| Column Name | Type |+-------------+------+| student_id | int || score | int |+-------------+------+student_id 是这个表的主键。每一行包含纽约大学 (New York University) 中一名学生一次考试的成绩。表: California+-------------+------+...原创 2022-03-20 09:50:38 · 247 阅读 · 0 评论 -
LeetCode-1789. 员工的直属部门
Table: Employee+---------------+---------+| Column Name | Type |+---------------+---------+| employee_id | int || department_id | int || primary_flag | varchar |+---------------+---------+这张表的主键为 employee_id, department_idemployee...原创 2022-03-12 00:11:08 · 273 阅读 · 0 评论 -
LeetCode-589. N 叉树的前序遍历
给定一个 n叉树的根节点 root,返回 其节点值的 前序遍历 。n 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null 分隔(请参见示例)。示例 1:输入:root = [1,null,3,2,4,null,5,6]输出:[1,3,5,6,2,4]示例 2:输入:root = [1,null,2,3,4,5,null,null,6,7,null,8,null,9,10,null,null,11,null,12,null,13,null,null,14]输出:[...原创 2022-03-10 23:15:57 · 74 阅读 · 0 评论 -
LeetCode-1965. 丢失信息的雇员
表: Employees+-------------+---------+| Column Name | Type |+-------------+---------+| employee_id | int || name | varchar |+-------------+---------+employee_id 是这个表的主键。每一行表示雇员的id 和他的姓名。表: Salaries+-------------+---------+| Column...原创 2022-03-09 21:04:57 · 302 阅读 · 0 评论 -
LeetCode-146. LRU 缓存
请你设计并实现一个满足LRU (最近最少使用) 缓存 约束的数据结构。实现 LRUCache 类:LRUCache(int capacity) 以 正整数 作为容量capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。void put(int key, int value)如果关键字key 已经存在,则变更其数据值value ;如果不存在,则向缓存中插入该组key-value 。如果插入操作导致关键...原创 2022-03-01 23:31:11 · 201 阅读 · 0 评论 -
LeetCode-1873. 计算特殊奖金
表: Employees+-------------+---------+| 列名 | 类型 |+-------------+---------+| employee_id | int || name | varchar || salary | int |+-------------+---------+employee_id 是这个表的主键。此表的每一行给出了雇员id ,名字和薪水。写出一个SQL 查询语句,计算每个...原创 2022-02-27 23:08:42 · 485 阅读 · 0 评论 -
LeetCode-1303. 求团队人数
员工表:Employee+---------------+---------+| Column Name | Type |+---------------+---------+| employee_id | int || team_id | int |+---------------+---------+employee_id 字段是这张表的主键,表中的每一行都包含每个员工的 ID 和他们所属的团队。编写一个 SQL 查询,以求得每个员工所在团队的...原创 2022-02-27 19:44:01 · 85 阅读 · 0 评论 -
LeetCode-1741. 查找每个员工花费的总时间
表: Employees+-------------+------+| Column Name | Type |+-------------+------+| emp_id | int || event_day | date || in_time | int || out_time | int |+-------------+------+(emp_id, event_day, in_time) 是这个表的主键。该表显示了员工在办公室的出入情况。ev...原创 2022-02-27 15:58:08 · 155 阅读 · 0 评论 -
LeetCode-1587. 银行账户概要 II
表: Users+--------------+---------+| Column Name | Type |+--------------+---------+| account | int || name | varchar |+--------------+---------+account 是该表的主键.表中的每一行包含银行里中每一个用户的账号.表: Transactions+---------------+---------...原创 2022-02-26 11:40:44 · 138 阅读 · 0 评论 -
LeetCode-1189. “气球” 的最大数量
给你一个字符串 text,你需要使用 text 中的字母来拼凑尽可能多的单词 "balloon"(气球)。字符串 text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词 "balloon"。示例 1:输入:text = "nlaebolko"输出:1示例 2:输入:text = "loonbalxballpoon"输出:2示例 3:输入:text = "leetcode"输出:0提示:1 <= text.length <=.原创 2022-02-13 20:39:41 · 90 阅读 · 0 评论 -
LeetCode-1405. 最长快乐字符串
如果字符串中不含有任何 'aaa','bbb' 或 'ccc' 这样的字符串作为子串,那么该字符串就是一个「快乐字符串」。给你三个整数 a,b ,c,请你返回 任意一个 满足下列全部条件的字符串 s:s 是一个尽可能长的快乐字符串。s 中 最多 有a 个字母 'a'、b个字母 'b'、c 个字母 'c' 。s 中只含有 'a'、'b' 、'c' 三种字母。如果不存在这样的字符串 s ,请返回一个空字符串 ""。示例 1:输入:a = 1, b = 1, c = 7输出:"cca.原创 2022-02-07 22:22:25 · 180 阅读 · 0 评论 -
LeetCode-2034. 股票价格波动
给你一支股票价格的数据流。数据流中每一条记录包含一个 时间戳和该时间点股票对应的 价格。不巧的是,由于股票市场内在的波动性,股票价格记录可能不是按时间顺序到来的。某些情况下,有的记录可能是错的。如果两个有相同时间戳的记录出现在数据流中,前一条记录视为错误记录,后出现的记录 更正前一条错误的记录。请你设计一个算法,实现:更新 股票在某一时间戳的股票价格,如果有之前同一时间戳的价格,这一操作将更正之前的错误价格。找到当前记录里 最新股票价格。最新股票价格定义为时间戳最晚的股票价格。...原创 2022-01-23 22:29:17 · 104 阅读 · 0 评论 -
LeetCode-219. 存在重复元素 II
给你一个整数数组nums 和一个整数k ,判断数组中是否存在两个 不同的索引i和j ,满足 nums[i] == nums[j] 且 abs(i - j) <= k 。如果存在,返回 true ;否则,返回 false 。示例1:输入:nums = [1,2,3,1], k = 3输出:true示例 2:输入:nums = [1,0,1,1], k = 1输出:true示例 3:输入:nums = [1,2,3,1,2,3], k = 2输出:false...原创 2022-01-20 00:02:32 · 420 阅读 · 0 评论 -
LeetCode-1716. 计算力扣银行的钱
Hercy 想要为购买第一辆车存钱。他 每天 都往力扣银行里存钱。最开始,他在周一的时候存入 1块钱。从周二到周日,他每天都比前一天多存入 1块钱。在接下来每一个周一,他都会比 前一个周一 多存入 1块钱。给你n,请你返回在第 n天结束的时候他在力扣银行总共存了多少块钱。示例 1:输入:n = 4输出:10解释:第 4 天后,总额为 1 + 2 + 3 + 4 = 10 。示例 2:输入:n = 10输出:37解释:第 10 天后,总额为 (1 + 2 + 3 ...原创 2022-01-15 14:07:11 · 112 阅读 · 0 评论 -
LeetCode-1629. 按键持续时间最长的键
LeetCode 设计了一款新式键盘,正在测试其可用性。测试人员将会点击一系列键(总计 n 个),每次一个。给你一个长度为 n 的字符串 keysPressed ,其中 keysPressed[i] 表示测试序列中第 i 个被按下的键。releaseTimes 是一个升序排列的列表,其中 releaseTimes[i] 表示松开第 i 个键的时间。字符串和数组的 下标都从 0 开始 。第 0 个键在时间为 0 时被按下,接下来每个键都 恰好 在前一个键松开时被按下。测试人员想要找出按键 持续时间最长原创 2022-01-09 22:42:49 · 82 阅读 · 0 评论 -
LeetCode-1576. 替换所有的问号
给你一个仅包含小写英文字母和 '?' 字符的字符串 s,请你将所有的 '?' 转换为若干小写字母,使最终的字符串不包含任何 连续重复 的字符。注意:你 不能 修改非 '?' 字符。题目测试用例保证 除 '?' 字符 之外,不存在连续重复的字符。在完成所有转换(可能无需转换)后返回最终的字符串。如果有多个解决方案,请返回其中任何一个。可以证明,在给定的约束条件下,答案总是存在的。示例 1:输入:s = "?zs"输出:"azs"解释:该示例共有 25 种解决方案,从 "azs" 到原创 2022-01-05 22:56:49 · 72 阅读 · 0 评论 -
LeetCode-1185. 一周中的第几天
给你一个日期,请你设计一个算法来判断它是对应一周中的哪一天。输入为三个整数:day、month 和year,分别表示日、月、年。您返回的结果必须是这几个值中的一个{"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}。示例 1:输入:day = 31, month = 8, year = 2019输出:"Saturday"示例 2:输入:day = 18, month = 7..原创 2022-01-04 21:58:42 · 158 阅读 · 0 评论