随笔分类 -  学习 / 学习-LeetCode刷题

日常学习-LeetCode刷题
摘要:题目 三角形类型 给你一个下标从 0 开始长度为 3 的整数数组 nums ,需要用它们来构造三角形。 如果一个三角形的所有边长度相等,那么这个三角形称为 equilateral 。 如果一个三角形恰好有两条边长度相等,那么这个三角形称为 isosceles 。 如果一个三角形三条边的长度互不相同, 阅读全文
posted @ 2025-05-19 15:43 skystrivegao 阅读(37) 评论(0) 推荐(0)
摘要:有序三元组中的最大值 题目: 给你一个下标从 0 开始的整数数组 nums 。 请你从所有满足 i < j < k 的下标三元组 (i, j, k) 中,找出并返回下标三元组的最大值。如果所有满足条件的三元组的值都是负数,则返回 0 。 下标三元组 (i, j, k) 的值等于 (nums[i] - 阅读全文
posted @ 2025-04-03 08:17 skystrivegao 阅读(72) 评论(0) 推荐(0)
摘要:2140.解决智力问题 题目描述: 给你一个下标从 0 开始的二维整数数组 questions ,其中 questions[i] = [pointsi, brainpoweri] 。 这个数组表示一场考试里的一系列题目,你需要 按顺序 (也就是从问题 0 开始依次解决),针对每个问题选择 解决 或者 阅读全文
posted @ 2025-04-01 17:05 skystrivegao 阅读(66) 评论(0) 推荐(0)
摘要:LeetCode刷题-二分法查找 题目: 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 示例 1: 输入: nums = [-1,0,3,5,9,12], target = 阅读全文
posted @ 2025-04-01 17:05 skystrivegao 阅读(27) 评论(0) 推荐(0)
摘要:LeetCode刷题-动态规划-爬楼梯 题目: 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶。 1 阶 + 1 阶 2 阶 示例 2: 输入:n = 3 输 阅读全文
posted @ 2025-04-01 15:14 skystrivegao 阅读(32) 评论(0) 推荐(0)
摘要:题目: 给你一个下标从 0 开始的字符串 s ,重复执行下述操作 任意 次: 在字符串中选出一个下标 i ,并使 c 为字符串下标 i 处的字符。并在 i 左侧(如果有)和 右侧(如果有)各 删除 一个距离 i 最近 的字符 c 。 请你通过执行上述操作任意次,使 s 的长度 最小化 。 返回一个表 阅读全文
posted @ 2025-04-01 09:35 skystrivegao 阅读(18) 评论(0) 推荐(0)
摘要:908. 最小差值 I 难度简单157 给你一个整数数组 nums,和一个整数 k 。 在一个操作中,您可以选择 0 <= i < nums.length 的任何索引 i 。将 nums[i] 改为 nums[i] + x ,其中 x 是一个范围为 [-k, k] 的整数。对于每个索引 i ,最多  阅读全文
posted @ 2022-04-30 22:14 skystrivegao 阅读(99) 评论(0) 推荐(0)
摘要:给定一个正整数 n,找到并返回 n 的二进制表示中两个 相邻 1 之间的 最长距离 。如果不存在两个相邻的 1,返回 0 。 如果只有 0 将两个 1 分隔开(可能不存在 0 ),则认为这两个 1 彼此 相邻 。两个 1 之间的距离是它们的二进制表示中位置的绝对差。例如,"1001" 中的两个 1 阅读全文
posted @ 2022-04-24 22:11 skystrivegao 阅读(51) 评论(0) 推荐(0)
摘要:819. 最常见的单词 难度简单155 给定一个段落 (paragraph) 和一个禁用单词列表 (banned)。返回出现次数最多,同时不在禁用列表中的单词。 题目保证至少有一个词不在禁用列表中,而且答案唯一。 禁用列表中的单词用小写字母表示,不含标点符号。段落中的单词不区分大小写。答案都是小写字 阅读全文
posted @ 2022-04-17 15:42 skystrivegao 阅读(121) 评论(0) 推荐(0)
摘要:553. 最优除法 给定一组正整数,相邻的整数之间将会进行浮点除法操作。例如, [2,3,4] -> 2 / 3 / 4 。 但是,你可以在任意位置添加任意数目的括号,来改变算数的优先级。你需要找出怎么添加括号,才能得到最大的结果,并且返回相应的字符串格式的表达式。你的表达式不应该含有冗余的括号。 阅读全文
posted @ 2022-02-27 10:11 skystrivegao 阅读(37) 评论(0) 推荐(0)
摘要:2016. 增量元素之间的最大差值 给你一个下标从 0 开始的整数数组 nums ,该数组的大小为 n ,请你计算 nums[j] - nums[i] 能求得的 最大差值 ,其中 0 <= i < j < n 且 nums[i] < nums[j] 。 返回 最大差值 。如果不存在满足要求的 i 和 阅读全文
posted @ 2022-02-26 10:33 skystrivegao 阅读(52) 评论(0) 推荐(0)
摘要:最简分数 难度中等76 给你一个整数 n ,请你返回所有 0 到 1 之间(不包括 0 和 1)满足分母小于等于 n 的 最简 分数 。分数可以以 任意 顺序返回。 示例 1: 输入:n = 2 输出:["1/2"] 解释:"1/2" 是唯一一个分母小于等于 2 的最简分数。 示例 2: 输入:n 阅读全文
posted @ 2022-02-10 23:37 skystrivegao 阅读(121) 评论(0) 推荐(0)
摘要:2006. 差的绝对值为 K 的数对数目 给你一个整数数组 nums 和一个整数 k ,请你返回数对 (i, j) 的数目,满足 i < j 且 |nums[i] - nums[j]| == k 。 |x| 的值定义为: 如果 x >= 0 ,那么值为 x 。 如果 x < 0 ,那么值为 -x 。 阅读全文
posted @ 2022-02-09 22:05 skystrivegao 阅读(84) 评论(0) 推荐(0)
摘要:21. 合并两个有序链表 难度简单2161 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2: 输入:l1 = [], l2 = []输出:[]示例 3 阅读全文
posted @ 2022-01-26 23:08 skystrivegao 阅读(32) 评论(0) 推荐(0)
摘要:给出第一个词 first 和第二个词 second,考虑在某些文本 text 中可能以 "first second third" 形式出现的情况,其中 second 紧随 first 出现,third 紧随 second 出现。 对于每种这样的情况,将第三个词 "third" 添加到答案中,并返回答 阅读全文
posted @ 2021-12-26 10:00 skystrivegao 阅读(38) 评论(0) 推荐(0)
摘要:给你一个字符串 date ,它的格式为 Day Month Year ,其中: Day 是集合 {"1st", "2nd", "3rd", "4th", ..., "30th", "31st"} 中的一个元素。Month 是集合 {"Jan", "Feb", "Mar", "Apr", "May&q 阅读全文
posted @ 2021-12-23 21:08 skystrivegao 阅读(78) 评论(0) 推荐(0)
摘要:1154. 一年中的第几天 给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。请你计算并返回该日期是当年的第几天。 通常情况下,我们认为 1 月 1 日是每年的第 1 天,1 月 2 日是每年的第 2 天,依此类推。每个月的天数与现行公元纪年法(格里高利历)一 阅读全文
posted @ 2021-12-21 22:07 skystrivegao 阅读(50) 评论(0) 推荐(0)
摘要:给定两个字符串, A 和 B。 A 的旋转操作就是将 A 最左边的字符移动到最右边。 例如, 若 A = 'abcde',在移动一次之后结果就是'bcdea' 。如果在若干次旋转操作之后,A 能变成B,那么返回True。 示例 1:输入: A = 'abcde', B = 'cdeab'输出: tr 阅读全文
posted @ 2021-12-20 21:59 skystrivegao 阅读(44) 评论(0) 推荐(0)
摘要:在一个小镇里,按从 1 到 n 为 n 个人进行编号。传言称,这些人中有一个是小镇上的秘密法官。 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人。每个人(除了小镇法官外)都信任小镇的法官。只有一个人同时满足条件 1 和条件 2 。给定数组 trust,该数组由信任对 trust[i] = [ 阅读全文
posted @ 2021-12-19 10:57 skystrivegao 阅读(46) 评论(0) 推荐(0)
摘要:设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) —— 将元素 x 推入栈中。pop() —— 删除栈顶的元素。top() —— 获取栈顶元素。getMin() —— 检索栈中的最小元素。 import java.util.Deque; clas 阅读全文
posted @ 2021-12-18 10:39 skystrivegao 阅读(32) 评论(0) 推荐(0)