![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Leetcode
Loewi大湿
这个作者很懒,什么都没留下…
展开
-
【lc刷题】179. Largest Number(sort)
179. Largest NumberGiven a list of non-negative integers nums, arrange them such that they form the largest number.Note: The result may be very large, so you need to return a string instead of an integer.Example 1:Input: nums = [10,2]Output: “210”Ex原创 2020-11-05 05:03:25 · 288 阅读 · 0 评论 -
【lc刷题】300/334/673/1626 关于特定子序列 (DP)
300. Longest Increasing Subsequence301. Increasing Triplet Subsequence302. Number of Longest Increasing Subsequence1626. Best Team With No Conflicts300class Solution: def lengthOfLIS(self, nums: List[int]) -> int: """ [4,10,4,3,原创 2020-10-23 04:59:12 · 349 阅读 · 0 评论 -
【lc刷题】1544. Make The String Great
Given a string s of lower and upper case English letters.A good string is a string which doesn’t have two adjacent characterss[i] and s[i + 1] where:0 <= i <= s.length - 2 s[i] is a lower-case letter and s[i + 1] is thesame letter but in upper-c.原创 2020-08-09 14:47:07 · 302 阅读 · 0 评论 -
【lc刷题】1545. Find Kth Bit in Nth Binary String
题目:Given two positive integers n and k, the binary string Sn is formed as follows:S1 = “0”Si = Si-1 + “1” + reverse(invert(Si-1)) for i > 1Where + denotes the concatenation operation, reverse(x) returns the reversed string x, and invert(x) inverts原创 2020-08-09 14:36:10 · 161 阅读 · 0 评论 -
【lc刷题】79 Word Search
Given a 2D board and a word, find if the word exists in the grid.The word can be constructed from letters of sequentially adjacent cell, where "adjacent" cells are those horizontally or vertically n...原创 2019-12-16 03:06:32 · 86 阅读 · 0 评论 -
【lc刷题】7 整数反转_Day04
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321 示例 3:输入: 120输出: 21 注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转...原创 2019-05-13 18:39:03 · 128 阅读 · 0 评论 -
【lc刷题】344 反转字符串_Day04
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。 示例 1: 输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l...原创 2019-05-13 20:38:46 · 169 阅读 · 0 评论 -
【lc刷题】557 反转字符串中的单词 III_Day04 + 反转小结
反转字符串中的单词 III给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例 1:输入: “Let’s take LeetCode contest”输出: “s’teL ekat edoCteeL tsetnoc”注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。“”"刷简单题真开心~思路就是分手各自改,改好了再...原创 2019-05-13 21:05:49 · 188 阅读 · 0 评论 -
【lc刷题】21 合并两个有序链表(链表)_Day04
合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3->4输出:1->1->2->3->4->4![在这里插入图片描述](https://img-blog.csdnimg.cn/201905...原创 2019-05-13 22:03:59 · 177 阅读 · 0 评论 -
【lc刷题】83 删除排序链表中的重复元素(链表)_Day04
删除排序链表中的重复元素 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 输入: 1->1->2输出: 1->2 示例 2:输入: 1->1->2->3->3输出: 1->2->3#第一次尝试出现了问题:#class Solution:# ...原创 2019-05-13 22:46:57 · 154 阅读 · 0 评论 -
【lc刷题】82 删除排序链表中的重复元素 II(链表)_Day05
删除排序链表中的重复元素 II 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。 示例 1: 输入: 1->2->3->3->4->4->5输出: 1->2->5 示例 2: 输入: 1->1->1->2->3输...原创 2019-05-14 11:28:27 · 245 阅读 · 0 评论 -
【lc刷题】143 重排链表(链表)_Day09(34/300)
重排链表 给定一个单链表 L:L0→L1→…→Ln-1→Ln ,将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→… 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例 1: 给定链表 1->2->3->4, 重新排列为 1->4->2->3. 示例 2...原创 2019-05-18 23:27:53 · 229 阅读 · 0 评论 -
【lc刷题】19 删除链表的倒数第N个节点(链表)_Day05
删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5.说明: 给定的 n 保证是有效的。 进阶:...原创 2019-05-14 13:51:27 · 166 阅读 · 0 评论 -
【lc刷题】203 移除链表元素(链表)_Day05 + 链表删除小结
移除链表元素删除链表中等于给定值 val 的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5这题也比较简单。class Solution: def removeElements(self, head: ListNod...原创 2019-05-14 14:41:54 · 143 阅读 · 0 评论 -
【lc刷题】148 排序链表(链表)_Day10(35/300)
35/300排序链表 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 输入: 4->2->1->3输出: 1->2->3->4 示例 2: 输入: -1->5->3->4->0输出: -1->0->3->...原创 2019-05-19 16:37:12 · 180 阅读 · 0 评论 -
【lc刷题】328 奇偶链表(链表)_Day10(36/300)
36/300奇偶链表给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。 请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。 示例 1: 输入: 1->2->3->4->5-...原创 2019-05-19 19:33:36 · 145 阅读 · 0 评论 -
【lc刷题】147 对链表进行插入排序(链表)_Day10(37/300)
37/300对链表进行插入排序 插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。 插入排序算法: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。每次迭代中,插入排序只从输入数据中移除一个待排序...原创 2019-05-19 20:56:25 · 181 阅读 · 0 评论 -
【lc刷题】8 字符串转换整数_Day05(16/300)
15/300字符串转换整数 (atoi)请你来实现一个 atoi 函数,使其能将字符串转换成整数。 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。 当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整...原创 2019-05-14 19:25:19 · 171 阅读 · 0 评论 -
【lc刷题】160 相交链表(链表)_Day10(38/300)
38/300相交链表编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表:在节点 c1 开始相交。 示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with va...原创 2019-05-19 22:24:49 · 183 阅读 · 0 评论 -
【lc刷题】9 回文数_Day05(17/300)
17/300回文数判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121输出: true 示例 2: 输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例 3: ...原创 2019-05-14 21:20:45 · 138 阅读 · 0 评论 -
【lc刷题】20 有效的括号_Day11(40/300)
40/300有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。 示例 1: 输入: “()”输出: true 示例 2: 输入: “()[]{}...原创 2019-05-20 11:21:25 · 157 阅读 · 0 评论 -
【lc刷题】707 设计链表(链表)_Day10(39/300)
设计链表设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。 在链表类中实现这些功能: get(index):获取链表中第 index...原创 2019-05-20 14:00:09 · 260 阅读 · 0 评论 -
【lc刷题】445 两数相加 II(链表)_Day06(18/300)
18/300两数相加给定两个非空链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。 进阶: 如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。 示例: 输入: (7 -> ...原创 2019-05-15 11:40:36 · 164 阅读 · 0 评论 -
【lc刷题】88 合并两个有序数组 _Day01
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。Input: nums1 = [1,2,3,0,0,0], m = 3 num...原创 2019-05-10 15:16:50 · 137 阅读 · 0 评论 -
【lc刷题】234 回文链表(链表)_Day06(19/300)
19/300回文链表 请判断一个链表是否为回文链表。 示例 1: 输入: 1->2输出: false 示例 2: 输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?【拒绝 输入: -129->-129输出:...原创 2019-05-15 14:16:36 · 186 阅读 · 0 评论 -
【lc刷题】02 两数相加 (链表) _Day01
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -&...原创 2019-05-10 18:33:26 · 154 阅读 · 0 评论 -
【lc刷题】206 反转链表(链表) _Day01
反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULLclass Solution(object): def reverseList(self, head): """ :type head: ListNode ...原创 2019-05-10 21:58:02 · 156 阅读 · 0 评论 -
【lc刷题】92 反转链表 II(链表)_Day06(20/300)
20/300反转链表 II反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 说明:1 ≤ m ≤ n ≤ 链表长度。 【有可能 m = n,就不用变 示例: 输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL...原创 2019-05-15 17:24:59 · 164 阅读 · 0 评论 -
【lc刷题】237 删除链表中的节点(链表) _Day01
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。 现有一个链表 – head = [4,5,1,9],它可以表示为: 示例 1: 输入: head = [4,5,1,9], node = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为...原创 2019-05-10 23:38:11 · 182 阅读 · 0 评论 -
【lc刷题】673 最长递增子序列的个数(DP与bisect)_Day15(51/300)
51/300最长递增子序列的个数给定一个未排序的整数数组,找到最长递增子序列的个数。 示例 1: 输入: [1,3,5,4,7]输出: 2解释: 有两个最长递增子序列,分别是 [1, 3, 4, 7] 和[1, 3, 5, 7]。 示例 2: 输入: [2,2,2,2,2]输出: 5解释: 最长递增子序列的长度是1,并且存在5...原创 2019-05-24 17:13:28 · 652 阅读 · 0 评论 -
【lc刷题】11 盛最多水的容器_Day07(21/300)
21/300盛最多水的容器给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且 n 的值至少为 2。 示例:输入: [1,8,6,2,5,4,...原创 2019-05-16 11:28:06 · 157 阅读 · 0 评论 -
【lc刷题】33 搜索旋转排序数组_Day15(52/300)
52/300搜索旋转排序数组假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。 你可以假设数组中不存在重复的元素。 你的算法时间复杂度必须是 O(log...原创 2019-05-25 11:09:05 · 184 阅读 · 0 评论 -
【lc刷题】876 链表的中间结点(链表) _Day02
链表的中间结点 给定一个带有头结点 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 L...原创 2019-05-12 01:20:59 · 207 阅读 · 0 评论 -
【lc刷题】13 罗马数字转整数_Day15(53/300)
53/300罗马数字转整数罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马...原创 2019-05-25 11:25:08 · 230 阅读 · 0 评论 -
【lc刷题】12 整数转罗马数字_Day16(54/300)
54/300整数转罗马数字罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马...原创 2019-05-25 13:18:30 · 267 阅读 · 0 评论 -
【lc刷题】273 整数转换英文表示_Day12(41/300)
整数转换英文表示将非负整数转换为其对应的英文表示。可以保证给定输入小于 231 - 1 。示例 1: 输入: 123输出: “One Hundred Twenty Three”示例 2: 输入: 12345输出: “Twelve Thousand Three Hundred Forty Five”示例 3: 输入: 1234567输出: ...原创 2019-05-21 19:27:44 · 232 阅读 · 0 评论 -
【lc刷题】43 字符串相乘_Day16(55/300)
字符串相乘给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入: num1 = “2”, num2 = “3”输出: “6” 示例 2: 输入: num1 = “123”, num2 = “456”输出: “56088”说明: ...原创 2019-05-25 16:03:13 · 248 阅读 · 0 评论 -
【lc刷题】3 无重复字符的最长子串_Day12(42/300)
42/300无重复字符的最长子串给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2: 输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:&nb...原创 2019-05-21 22:52:44 · 175 阅读 · 2 评论 -
【lc刷题】415 字符串相加_Day16(56/300)
56/300字符串相加给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。 注意: num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。觉得跟02 两数相加 (链表)的...原创 2019-05-25 18:44:07 · 192 阅读 · 0 评论 -
【lc刷题】66 加一_Day16(57/300)
57/300加一给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。 示例 2: ...原创 2019-05-25 19:37:52 · 140 阅读 · 0 评论