随笔分类 -  力扣算法Java篇

23. 合并 K 个升序链表
摘要:23. 合并 K 个升序链表 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: [ 1->4->5, 阅读全文

posted @ 2023-04-02 10:26 HHHuskie 阅读(30) 评论(0) 推荐(0)

86. 分隔链表
摘要:86. 分隔链表 给你一个链表的头节点 head 和一个特定值x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每个节点的初始相对位置。 示例 1: 输入:head = [1,4,3,2,5,2], x = 3 输出:[1,2,2,4 阅读全文

posted @ 2023-04-02 01:12 HHHuskie 阅读(30) 评论(0) 推荐(0)

831. 隐藏个人信息
摘要:831. 隐藏个人信息 给你一条个人信息字符串 s ,可能表示一个 邮箱地址 ,也可能表示一串 电话号码 。返回按如下规则 隐藏 个人信息后的结果: 电子邮件地址: 一个电子邮件地址由以下部分组成: 一个 名字 ,由大小写英文字母组成,后面跟着 一个 '@' 字符,后面跟着 一个 域名 ,由大小写英 阅读全文

posted @ 2023-04-01 21:55 HHHuskie 阅读(107) 评论(0) 推荐(0)

2491. 划分技能点相等的团队
摘要:2491. 划分技能点相等的团队 给你一个正整数数组 skill ,数组长度为 偶数 n ,其中 skill[i] 表示第 i 个玩家的技能点。将所有玩家分成 n / 2 个 2 人团队,使每一个团队的技能点之和 相等 。 团队的 化学反应 等于团队中玩家的技能点 乘积 。 返回所有团队的 化学反应 阅读全文

posted @ 2023-03-27 22:53 HHHuskie 阅读(25) 评论(0) 推荐(0)

6. N 字形变换
摘要:6. N 字形变换 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下: P A H N A P L S I I G Y I R 之后,你的输出需要从左往右逐行读取,产生出一个 阅读全文

posted @ 2023-03-25 10:44 HHHuskie 阅读(125) 评论(0) 推荐(0)

792. 匹配子序列的单词数
摘要:792. 匹配子序列的单词数 给定字符串 s 和字符串数组 words, 返回 words[i] 中是s的子序列的单词个数 。 字符串的 子序列 是从原始字符串中生成的新字符串,可以从中删去一些字符(可以是none),而不改变其余字符的相对顺序。 例如, “ace” 是 “abcde” 的子序列。 阅读全文

posted @ 2023-03-24 18:48 HHHuskie 阅读(90) 评论(0) 推荐(0)

7. 整数反转
摘要:7. 整数反转 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 示例 1: 输入:x = 123 输出:321 示例 2 阅读全文

posted @ 2023-03-24 16:19 HHHuskie 阅读(28) 评论(0) 推荐(0)

1630 等差子数组
摘要:1630. 等差子数组 如果一个数列由至少两个元素组成,且每两个连续元素之间的差值都相同,那么这个序列就是 等差数列 。更正式地,数列 s 是等差数列,只需要满足:对于每个有效的 i , s[i+1] - s[i] == s[1] - s[0] 都成立。 例如,下面这些都是 等差数列 : 1, 3, 阅读全文

posted @ 2023-03-23 22:48 HHHuskie 阅读(21) 评论(0) 推荐(0)

136. 只出现一次的数字
摘要:136. 只出现一次的数字 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。 示例 1 : 输入:nums = [2,2,1] 输出:1 示例 2 : 阅读全文

posted @ 2023-03-23 10:24 HHHuskie 阅读(15) 评论(0) 推荐(0)

51. N 皇后
摘要:51. N 皇后 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的 阅读全文

posted @ 2023-03-19 16:23 HHHuskie 阅读(24) 评论(0) 推荐(0)

39. 组合总和
摘要:39. 组合总和 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制 阅读全文

posted @ 2023-03-19 11:48 HHHuskie 阅读(17) 评论(0) 推荐(0)

Java算法——字符串
摘要:344. 反转字符串 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 示例 1: 输入:s = ["h","e","l","l","o"] 输出:["o","l", 阅读全文

posted @ 2023-03-12 15:44 HHHuskie 阅读(51) 评论(0) 推荐(0)

929. 独特的电子邮件地址
摘要:929. 独特的电子邮件地址 每个 有效电子邮件地址 都由一个 本地名 和一个 域名 组成,以 '@' 符号分隔。除小写字母之外,电子邮件地址还可以含有一个或多个 '.' 或 '+' 。 例如,在 alice@leetcode.com中, alice 是 本地名 ,而 leetcode.com 是 阅读全文

posted @ 2023-03-11 15:44 HHHuskie 阅读(73) 评论(0) 推荐(0)

799. 香槟塔
摘要:799. 香槟塔 我们把玻璃杯摆成金字塔的形状,其中 第一层 有 1 个玻璃杯, 第二层 有 2 个,依次类推到第 100 层,每个玻璃杯 (250ml) 将盛有香槟。 从顶层的第一个玻璃杯开始倾倒一些香槟,当顶层的杯子满了,任何溢出的香槟都会立刻等流量的流向左右两侧的玻璃杯。当左右两边的杯子也满了 阅读全文

posted @ 2022-11-21 19:49 HHHuskie 阅读(223) 评论(0) 推荐(0)

1007. 行相等的最少多米诺旋转
摘要:1007. 行相等的最少多米诺旋转 在一排多米诺骨牌中,A[i] 和 B[i] 分别代表第 i 个多米诺骨牌的上半部分和下半部分。(一个多米诺是两个从 1 到 6 的数字同列平铺形成的 —— 该平铺的每一半上都有一个数字。) 我们可以旋转第 i 张多米诺,使得 A[i] 和 B[i] 的值交换。 返 阅读全文

posted @ 2022-11-05 14:06 HHHuskie 阅读(33) 评论(0) 推荐(0)

1620. 网络信号最好的坐标
摘要:1620. 网络信号最好的坐标 给你一个数组 towers 和一个整数 radius 。 数组 towers 中包含一些网络信号塔,其中 towers[i] = [xi, yi, qi] 表示第 i 个网络信号塔的坐标是 (xi, yi) 且信号强度参数为 qi 。所有坐标都是在 X-Y 坐标系内的 阅读全文

posted @ 2022-11-02 23:31 HHHuskie 阅读(61) 评论(0) 推荐(0)

1190. 反转每对括号间的子串
摘要:1190. 反转每对括号间的子串 给出一个字符串 s(仅含有小写英文字母和括号)。 请你按照从括号内到外的顺序,逐层反转每对匹配括号中的字符串,并返回最终的结果。 注意,您的结果中 不应 包含任何括号。 示例 1: 输入:s = "(abcd)" 输出:"dcba" 示例 2: 输入:s = "(u 阅读全文

posted @ 2022-11-01 20:22 HHHuskie 阅读(66) 评论(0) 推荐(0)

481. 神奇字符串
摘要:481. 神奇字符串 神奇字符串 s 仅由 '1' 和 '2' 组成,并需要遵守下面的规则: 神奇字符串 s 的神奇之处在于,串联字符串中 '1' 和 '2' 的连续出现次数可以生成该字符串。 s 的前几个元素是 s = "1221121221221121122……" 。如果将 s 中连续的若干 1 阅读全文

posted @ 2022-10-31 11:13 HHHuskie 阅读(42) 评论(0) 推荐(0)

二分查找:35. 搜索插入位置 278. 第一个错误的版本
摘要:35. 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums = [1,3,5,6], target = 5 输出: 2 示例 2: 输 阅读全文

posted @ 2022-10-29 10:21 HHHuskie 阅读(39) 评论(0) 推荐(0)

907. 子数组的最小值之和
摘要:907. 子数组的最小值之和 给定一个整数数组 arr,找到 min(b) 的总和,其中 b 的范围为 arr 的每个(连续)子数组。 由于答案可能很大,因此 返回答案模 10^9 + 7 。 示例 1: 输入:arr = [3,1,2,4] 输出:17 解释: 子数组为[3],[1],[2],[4 阅读全文

posted @ 2022-10-28 11:21 HHHuskie 阅读(35) 评论(0) 推荐(0)

导航