![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
文章平均质量分 51
追风筝的少年czc
这个作者很懒,什么都没留下…
展开
-
leetcode 6056. 字符串中最大的 3 位相同数字
6056. 字符串中最大的 3 位相同数字难度简单1收藏分享切换为英文接收动态反馈给你一个字符串num,表示一个大整数。如果一个整数满足下述所有条件,则认为该整数是一个优质整数:该整数是num的一个长度为3的子字符串。 该整数由唯一一个数字重复3次组成。以字符串形式返回最大的优质整数。如果不存在满足要求的整数,则返回一个空字符串""。注意:子字符串是字符串中的一个连续字符序列。 num或优质整数中可能存在前导零。示例 1:输入:n...原创 2022-05-08 13:57:12 · 199 阅读 · 0 评论 -
leetcode 22. 括号生成
22. 括号生成难度中等2620收藏分享切换为英文接收动态反馈数字n代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且有效的括号组合。示例 1:输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]示例 2:输入:n = 1输出:["()"]提示:1 <= n <= 8 class Solution { public List<String&g...原创 2022-05-06 03:46:09 · 144 阅读 · 0 评论 -
leetcode 18. 四数之和
18. 四数之和难度中等1232收藏分享切换为英文接收动态反馈给你一个由n个整数组成的数组nums,和一个目标值target。请你找出并返回满足下述全部条件且不重复的四元组[nums[a], nums[b], nums[c], nums[d]](若两个四元组元素一一对应,则认为两个四元组重复):0 <= a, b, c, d< n a、b、c和d互不相同 nums[a] + nums[b] + nums[c] + nums[d] == target你可以...原创 2022-05-06 03:46:45 · 169 阅读 · 0 评论 -
leetcode 17. 电话号码的字母组合
17. 电话号码的字母组合难度中等1876收藏分享切换为英文接收动态反馈给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按任意顺序返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例 1:输入:digits = "23"输出:["ad","ae","af","bd","be","bf","cd","ce","cf"]示例 2:输入:digits = ""输出:[]示例 3:输入:digits ...原创 2022-05-05 03:07:16 · 92 阅读 · 0 评论 -
leetcode 16. 最接近的三数之和
16. 最接近的三数之和难度中等1132收藏分享切换为英文接收动态反馈给你一个长度为n的整数数组nums和 一个目标值target。请你从nums中选出三个整数,使它们的和与target最接近。返回这三个数的和。假定每组输入只存在恰好一个解。示例 1:输入:nums = [-1,2,1,-4], target = 1输出:2解释:与 target 最接近的和是 2 (-1 + 2 + 1 = 2) 。示例 2:输入:nums = [0,0,0]...原创 2022-05-03 01:26:23 · 163 阅读 · 0 评论 -
leetcode 15. 三数之和
15. 三数之和难度中等4721收藏分享切换为英文接收动态反馈给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c ,使得a + b + c =0 ?请你找出所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输...原创 2022-05-01 20:55:13 · 125 阅读 · 0 评论 -
leetcode 14. 最长公共前缀
14. 最长公共前缀难度简单2214编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例 1:输入:strs = ["flower","flow","flight"]输出:"fl"示例 2:输入:strs = ["dog","racecar","car"]输出:""解释:输入不存在公共前缀。提示:1 <= strs.length <= 200 0 <= strs[i].length <= .原创 2022-04-29 14:01:58 · 71 阅读 · 0 评论 -
leetcode 13. 罗马数字转整数
13. 罗马数字转整数难度简单1847罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字2写做II,即为两个并列的 1 。12写做XII,即为X+II。27写做X...原创 2022-04-28 14:07:17 · 80 阅读 · 0 评论 -
leetcode 11. 盛最多水的容器 12. 整数转罗马数字
11. 盛最多水的容器难度中等3444给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i, 0)和(i, height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49 解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色...原创 2022-04-27 22:06:55 · 69 阅读 · 0 评论 -
leetcode 7. 整数反转
7. 整数反转难度中等3494给你一个 32 位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围[−231, 231− 1],就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321示例 3:输入:x = 120输出:21示例 4:输入:x = 0输出:0提示:-...原创 2022-04-26 20:29:44 · 170 阅读 · 0 评论 -
leetcode 6. Z 字形变换
6. Z 字形变换难度中等1658将一个给定字符串s根据给定的行数numRows,以从上往下、从左到右进行Z 字形排列。比如输入字符串为"PAYPALISHIRING"行数为3时,排列如下:P A H NA P L S I I GY I R之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"PAHNAPLSIIGYIR"。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int...原创 2022-04-25 23:26:55 · 85 阅读 · 0 评论 -
leetcode 383. 赎金信 242. 有效的字母异位词 141. 环形链表 21. 合并两个有序链表
383. 赎金信难度简单310给你两个字符串:ransomNote和magazine,判断ransomNote能不能由magazine里面的字符构成。如果可以,返回true;否则返回false。magazine中的每个字符只能在ransomNote中使用一次。示例 1:输入:ransomNote = "a", magazine = "b"输出:false示例 2:输入:ransomNote = "aa", magazine = "ab"...原创 2022-04-20 00:56:01 · 78 阅读 · 0 评论 -
leetcode 73. 矩阵置零 387. 字符串中的第一个唯一字符 36. 有效的数独 118. 杨辉三角
73. 矩阵置零难度中等706给定一个mxn的矩阵,如果一个元素为0,则将其所在行和列的所有元素都设为0。请使用原地算法。示例 1:输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2:输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]提示:...原创 2022-04-19 02:15:20 · 130 阅读 · 0 评论 -
leetcode刷题:88. 合并两个有序数组 350. 两个数组的交集 II 121. 买卖股票的最佳时机 566. 重塑矩阵
88. 合并两个有序数组给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m + n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。示例 1:...原创 2022-04-17 16:36:44 · 86 阅读 · 0 评论 -
leetcode 53. 最大子数组和
53. 最大子数组和给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组[4,-1,2,1] 的和最大,为6 。示例 2:输入:nums = [1]输出:1示例 3:输入:nums = [5,4,-1,7,8]输出:23提示:1 <= nums.l...原创 2022-04-15 01:11:14 · 61 阅读 · 0 评论 -
leetcode 542. 01 矩阵 116. 填充每个节点的下一个右侧节点指针
给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:struct Node { int val; Node *left; Node *right; Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为NULL。初始状态下,所有next 指针都被设置为NULL。示例 1:输入:root = [1,2,3,4,5,6,7]...原创 2022-04-14 00:41:01 · 84 阅读 · 0 评论 -
leetcode 2231. 按奇偶性交换后的最大数字,617. 合并二叉树
2231. 按奇偶性交换后的最大数字给你一个正整数num。你可以交换num中奇偶性相同的任意两位数字(即,都是奇数或者偶数)。返回交换任意次之后num的最大可能值。示例 1:输入:num = 1234输出:3412解释:交换数字 3 和数字 1 ,结果得到 3214 。交换数字 2 和数字 4 ,结果得到 3412 。注意,可能存在其他交换序列,但是可以证明 3412 是最大可能值。注意,不能交换数字 4 和数字 1 ,因为它们奇偶性不同。示例 ...原创 2022-04-13 00:19:28 · 795 阅读 · 0 评论 -
leetcode刷题
876. 链表的中间结点给定一个头结点为head的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNode 类型的对象 ans,这样:ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, 以及 ans..原创 2022-04-11 07:53:26 · 61 阅读 · 0 评论 -
leetcode刷题
557. 反转字符串中的单词 III给定一个字符串s,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例 1:输入:s = "Let's take LeetCode contest"输出:"s'teL ekat edoCteeL tsetnoc"示例 2:输入: s = "God Ding"输出:"doG gniD"提示:1 <= s.length <= 5 * 104 s包含可打印的ASCII字符。 s不包...原创 2022-04-10 12:37:51 · 100 阅读 · 0 评论 -
leetcode刷题
344. 反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。示例 1:输入:s = ["h","e","l","l","o"]输出:["o","l","l","e","h"]示例 2:输入:s = ["H","a","n","n","a","h"]输出:["h","a","n","n","a","H"]提示:1 <..原创 2022-04-10 11:38:45 · 42 阅读 · 0 评论 -
leetcode刷题
283. 移动零给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。示例 1:输入: nums = [0,1,0,3,12]输出: [1,3,12,0,0]示例 2:输入: nums = [0]输出: [0]提示:1 <= nums.length <= 104 -231<= nums[i] <= 231- 1思路:把不为零的元素..原创 2022-04-10 00:09:03 · 116 阅读 · 0 评论 -
leetcode刷题
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例 1:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]示例 2:输入:nums = [-7,-3,2,3,11]输出:[4,9,9,49,121]class Solution { public int[] sortedSq原创 2022-04-05 13:29:25 · 41 阅读 · 0 评论 -
leetcode第六题【二分法】
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4提示:1 <= nums.length..原创 2022-04-01 22:20:55 · 74 阅读 · 0 评论 -
leetcode第五题【二分法】
你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用bool isBadVersion(version)接口来判断版本号 version 是否在单元测试中出错。实现一个函数来查找第一个错误的版本。你应该尽量减少对调用 API 的次数。示例 1:输入:n =...原创 2022-04-01 21:28:26 · 97 阅读 · 0 评论 -
leetcode第四题[二分法]
给定一个n个元素有序的(升序)整型数组nums 和一个目标值target ,写一个函数搜索nums中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1提示:你可以假设 ...原创 2022-04-01 20:49:36 · 155 阅读 · 0 评论 -
leetcode第三题
有效的括号给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例2:输入:s = "()[]{}"输出:true示例3:输入:s = "(]"输出:false示例4:输入:s = "([)]"输出:false示例5:输入:s = "{[]}"输出:true提示:...原创 2022-04-01 20:10:45 · 64 阅读 · 0 评论 -
刷LeetCode第二题
自除数 是指可以被它包含的每一位数整除的数。例如,128 是一个 自除数 ,因为128 % 1 == 0,128 % 2 == 0,128 % 8 == 0。自除数 不允许包含 0 。给定两个整数 left 和 right ,返回一个列表,列表的元素是范围 [left, right] 内所有的 自除数 。输入:left = 1, right = 22输出:[1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 22]输入:left = 47, rig.原创 2022-04-01 00:38:15 · 277 阅读 · 0 评论 -
刷leetcode第一题
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。示例 1:输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2:输入:head = [1,2]输出:[2,1]示例 3:输入:head = []输出:[]提示:链表中节点的数目范围是 [0, 5000]-5000 <= Node.val <= 5000进阶:链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?class Sol...原创 2022-03-30 00:43:28 · 1294 阅读 · 0 评论