欢迎来到IT嘟嘟的博客

人生三从境界:昨夜西风凋碧树,独上高楼,望尽天涯路。 衣带渐宽终不悔,为伊消得人憔悴。 众里寻他千百度,蓦然回首,那人却在灯火阑珊处。
扩大
缩小

随笔分类 -  LeetCode刷题练习

44. 通配符匹配
摘要:给定一个字符串 (s) 和一个字符模式 (p) ,实现一个支持 '?' 和 '*' 的通配符匹配。 '?' 可以匹配任何单个字符。'*' 可以匹配任意字符串(包括空字符串)。两个字符串完全匹配才算匹配成功。 说明: s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小 阅读全文

posted @ 2021-06-23 22:57 IT嘟嘟 阅读(54) 评论(0) 推荐(0) 编辑

43. 字符串相乘
摘要:给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入: num1 = "2", num2 = "3"输出: "6"示例 2: 输入: num1 = "123", num2 = "456"输出: "56088 阅读全文

posted @ 2021-06-19 22:48 IT嘟嘟 阅读(51) 评论(0) 推荐(0) 编辑

42. 接雨水
摘要:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]输出:6解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位 阅读全文

posted @ 2021-06-15 23:03 IT嘟嘟 阅读(24) 评论(0) 推荐(0) 编辑

41. 缺失的第一个正数
摘要:给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1: 输入:nums = [1,2,0]输出:3示例 2: 输入:nums = [3,4,-1,1]输出:2示例 3: 输入:nums = [7, 阅读全文

posted @ 2021-06-14 17:21 IT嘟嘟 阅读(27) 评论(0) 推荐(0) 编辑

40. 组合总和 II
摘要:给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用一次。 说明: 所有数字(包括目标数)都是正整数。解集不能包含重复的组合。 示例 1: 输入: candi 阅读全文

posted @ 2021-06-11 23:18 IT嘟嘟 阅读(25) 评论(0) 推荐(0) 编辑

39. 组合总和
摘要:给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 说明: 所有数字(包括 target)都是正整数。解集不能包含重复的组合。 示例 1: 输入: 阅读全文

posted @ 2021-06-11 22:11 IT嘟嘟 阅读(45) 评论(0) 推荐(0) 编辑

38. 外观数列
摘要:给定一个正整数 n ,输出外观数列的第 n 项。 「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。 你可以将其视作是由递归公式定义的数字字符串序列: countAndSay(1) = "1"countAndSay(n) 是对 countAndSay(n-1) 的描述, 阅读全文

posted @ 2021-06-11 20:29 IT嘟嘟 阅读(33) 评论(0) 推荐(0) 编辑

37. 解数独
摘要:编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则: 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用 '.' 表示。 示例: 输入:boa 阅读全文

posted @ 2021-06-11 20:26 IT嘟嘟 阅读(115) 评论(0) 推荐(0) 编辑

36. 有效的数独
摘要:请你判断一个 9x9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用 '.' 表示。 阅读全文

posted @ 2021-06-08 22:57 IT嘟嘟 阅读(59) 评论(0) 推荐(0) 编辑

35. 搜索插入位置
摘要:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5输出: 2示例 2: 输入: [1,3,5,6], 2输出: 1示例 3: 输入: [1,3,5,6], 阅读全文

posted @ 2021-06-07 22:04 IT嘟嘟 阅读(20) 评论(0) 推荐(0) 编辑

34. 在排序数组中查找元素的第一个和最后一个位置
摘要:给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 进阶: 你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗? 示例 1: 输入:nums = [5,7, 阅读全文

posted @ 2021-06-07 21:42 IT嘟嘟 阅读(38) 评论(0) 推荐(0) 编辑

33. 搜索旋转排序数组
摘要:整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], ..., 阅读全文

posted @ 2021-06-06 16:08 IT嘟嘟 阅读(34) 评论(0) 推荐(0) 编辑

31.下一个排列
摘要:实现下一个排列,它将数字重新排列成按字典顺序排列的下一个更大的数字排列。 如果这样的排列是不可能的,它必须重新排列它作为最低可能的顺序(即,按升序排序)。 替换必须到位,并且只使用恒定的额外内存。 这里有一些例子。输入列在左边,相应的输出列在右边。 1,2,3 → 1,3,23,2,1 → 1,2, 阅读全文

posted @ 2021-06-06 14:49 IT嘟嘟 阅读(43) 评论(0) 推荐(0) 编辑

32. 最长有效括号
摘要:给你一个只包含 '(' 和 ')' 的字符串,找出最长有效(格式正确且连续)括号子串的长度。 示例 1: 输入:s = "(()"输出:2解释:最长有效括号子串是 "()"示例 2: 输入:s = ")()())"输出:4解释:最长有效括号子串是 "()()"示例 3: 输入:s = ""输出:0 阅读全文

posted @ 2021-06-06 14:46 IT嘟嘟 阅读(88) 评论(0) 推荐(0) 编辑

30. 串联所有单词的子串
摘要:给定一个字符串 s 和一些长度相同的单词 words。找出 s 中恰好可以由 words 中所有单词串联形成的子串的起始位置。 注意子串要与 words 中的单词完全匹配,中间不能有其他字符,但不需要考虑 words 中单词串联的顺序。 示例 1: 输入: s = "barfoothefoobarm 阅读全文

posted @ 2019-09-14 19:56 IT嘟嘟 阅读(316) 评论(0) 推荐(0) 编辑

29. 两数相除
摘要:给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 示例 1: 输入: dividend = 10, divisor = 3输出: 3示例 2: 输入: divide 阅读全文

posted @ 2019-09-14 13:59 IT嘟嘟 阅读(269) 评论(0) 推荐(0) 编辑

28. 实现 strStr()
摘要:实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = "hello", needle = "ll"输 阅读全文

posted @ 2019-09-14 12:44 IT嘟嘟 阅读(189) 评论(0) 推荐(0) 编辑

27. 移除元素
摘要:给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums = [ 阅读全文

posted @ 2019-09-14 10:45 IT嘟嘟 阅读(136) 评论(0) 推荐(0) 编辑

26. 删除排序数组中的重复项
摘要:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前 阅读全文

posted @ 2019-09-14 10:24 IT嘟嘟 阅读(114) 评论(0) 推荐(0) 编辑

25. K 个一组翻转链表
摘要:给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 示例 : 给定这个链表:1->2->3->4->5 当 k = 2 时,应当返回: 2->1->4->3->5 当  阅读全文

posted @ 2019-09-01 10:31 IT嘟嘟 阅读(141) 评论(0) 推荐(0) 编辑

导航