![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python写leetcode
rory0114
这个作者很懒,什么都没留下…
展开
-
用python写leetcode【2】 --单词拆分(139)、单词拆分2(140)
文章目录分割回文串(131)题目思路代码单词拆分(139)题目思路代码分割回文串(131)题目给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。返回 s 所有可能的分割方案。示例:输入: “aab”输出:[[“aa”,“b”],[“a”,“a”,“b”]]思路代码 class Solution: def partition(self,...原创 2019-03-08 14:09:49 · 1197 阅读 · 0 评论 -
用python写leetcode【14】 -- 二叉树中的最大路径和(124)
二叉树中的最大路径和(124)题目给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。示例 1:输入: [1,2,3] 1 / \ 2 3输出: 6示例 2:输入: [-10,9,20,null,null,15,7]-10/ 9 20/ 15 7输出:...原创 2019-03-20 19:16:47 · 427 阅读 · 0 评论 -
用python写leetcode【12】 -- 前K个高频元素(347)
文章目录前K个高频元素(347)题目思路代码周末生病了,现在还没好。。。。先写点简单的。前K个高频元素(347)题目给定一个非空的整数数组,返回其中出现频率前 k 高的元素。示例 1:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]示例 2:输入: nums = [1], k = 1输出: [1]说明:你可以假设给定的 k 总是合理的,且 1...原创 2019-03-18 11:19:37 · 186 阅读 · 0 评论 -
用python写leetcode【6】 --乘积最大子序列(152)、旋转数组(189)
文章目录乘积最大子序列(152)题目思路代码旋转数组(189)题目思路代码乘积最大子序列(152)题目给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数)。示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] ...原创 2019-03-13 12:33:26 · 257 阅读 · 0 评论 -
用python写leetcode【15】 -- 最长连续序列(128)
最长连续序列(128)题目给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。示例:输入: [100, 4, 200, 1, 3, 2]输出: 4解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。思路我的想法是,建立一个字典m,key是数字,value是对应的该数字连续的长度,更新的方法是对于遍历的每一个数k,如果k-1或者k+1已...原创 2019-03-22 17:45:29 · 274 阅读 · 1 评论 -
用python写leetcode【17】 -- 岛屿的个数(200)
岛屿的个数(200)题目给定一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。示例 1:输入:11110110101100000000输出: 1示例 2:输入:11000110000010000011输出: 3思路使用dfs搜索,被搜索过...原创 2019-03-26 10:55:31 · 314 阅读 · 0 评论 -
用python写leetcode【16】 -- 打家劫舍(198)
打家劫舍(198)题目你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [1,2,3,1]输出: 4解释: 偷窃 1 号房屋 (金额 =...原创 2019-03-22 19:26:08 · 166 阅读 · 0 评论 -
用python写leetcode【18】 -- 课程表 II(210)拓扑排序
课程表 II(210)题目现在你总共有 n 门课需要选,记为 0 到 n-1。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1]给定课程总量以及它们的先决条件,返回你为了学完所有课程所安排的学习顺序。可能会有多个正确的顺序,你只要返回一种就可以了。如果不可能完成所有课程,返回一个空数组。示例 1:输入: 2,...原创 2019-03-26 14:19:22 · 328 阅读 · 0 评论 -
用python写leetcode【16】 -- 最长连续序列(230)
二叉搜索树中第K小的元素(230)题目给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素。说明:你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。示例 1:输入: root = [3,1,4,null,2], k = 13/ 1 42输出: 1示例 2:输入: root = [5,3,6,2,4,null,null...原创 2019-03-23 14:18:50 · 146 阅读 · 0 评论 -
用python写leetcode【5】 --字符串中的第一个唯一字符(387)、反转字符串(344)
文章目录字符串中的第一个唯一字符(242)题目思路代码反转字符串(344)题目思路代码字符串中的第一个唯一字符(242)题目给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = “leetcode”返回 0.s = “loveleetcode”,返回 2.注意事项:您可以假定该字符串只包含小写字母。思路很简单直接看代码代码 ...原创 2019-03-12 10:40:29 · 172 阅读 · 0 评论 -
用python写leetcode【13】 -- 至少有K个重复字符的最长子串(395)
至少有K个重复字符的最长子串(395)题目找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k 。输出 T 的长度。示例 1:输入:s = “aaabb”, k = 3输出:3最长子串为 “aaa” ,其中 ‘a’ 重复了 3 次。示例 2:输入:s = “ababbc”, k = 2输出:5最长子串为 “ababb” ,其中...原创 2019-03-20 13:00:38 · 702 阅读 · 0 评论 -
用python写leetcode【8】 --除自身以外数组的乘积(238)、最小栈(155)
文章目录两个数组的交集 II(350)题目思路代码递增的三元子序列(334)题目思路代码两个数组的交集 II(350)题目给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出: [2,2]示例 2:输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出: [4,9]说明:...原创 2019-03-14 12:18:59 · 183 阅读 · 0 评论 -
用python写leetcode【7】 --两个数组的交集 II(350)、递增的三元子序列(334)
文章目录两个数组的交集 II(350)题目思路代码递增的三元子序列(334)题目思路代码两个数组的交集 II(350)题目给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出: [2,2]示例 2:输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出: [4,9]说明:...原创 2019-03-14 13:30:39 · 220 阅读 · 0 评论 -
用python写leetcode【9】 --搜索二维矩阵 II(240)
文章目录搜索二维矩阵 II(240)题目思路代码今天起每文两道题改成每个文章一道题,这样阅读起来比较方便。搜索二维矩阵 II(240)题目编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例:现有矩阵 matrix 如下:[[1, 4, 7, 11, 15]...原创 2019-03-14 13:37:43 · 309 阅读 · 0 评论 -
用python写leetcode【3】 --有效的字母异位词(242)、实现 Trie (前缀树)(208)
分割回文串(131)题目给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。返回 s 所有可能的分割方案。示例:输入: “aab”输出:[[“aa”,“b”],[“a”,“a”,“b”]]思路代码 class Solution: def partition(self, s): """ :ty...原创 2019-03-09 20:09:05 · 236 阅读 · 0 评论 -
用python写leetcode【1】 --只出现一次的数字(136)、验证回文串(125)
用python写leetcode【1】 --只出现一次的数字(136)、验证回文串(125)只出现一次的数字(136)题目给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]...原创 2019-03-07 14:10:49 · 305 阅读 · 0 评论 -
用python写leetcode【10】 -- 数据流的中位数(295)
文章目录数据流的中位数(295)题目思路代码一今天起每文两道题改成每个文章一道题,这样阅读起来比较方便。数据流的中位数(295)题目中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。例如,[2,3,4] 的中位数是 3[2,3] 的中位数是 (2 + 3) / 2 = 2.5设计一个支持以下两种操作的数据结构:void addNum(int num) -...原创 2019-03-15 11:23:40 · 420 阅读 · 0 评论 -
用python写leetcode【11】 -- 有序矩阵中第K小的元素(378)
文章目录有序矩阵中第K小的元素(378)题目思路代码有序矩阵中第K小的元素(378)题目给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第k小的元素。请注意,它是排序后的第k小元素,而不是第k个元素。示例:matrix = [[ 1, 5, 9],[10, 11, 13],[12, 13, 15]],k = 8,返回 13。说明:你可以假设 k...原创 2019-03-15 12:27:41 · 531 阅读 · 0 评论 -
用python写leetcode【4】 --单词搜索 II(212) (dfs+前缀树/字典树)
文章目录单词搜索 II(212)题目过程代码一代码二代码三总结今天写了一道差点把我心太搞炸的题目 单词搜索 II(212),其中关于前缀树的方法参考前缀树单词搜索 II(212)题目单词搜索 II给定一个二维网格 board 和一个字典中的单词列表 words,找出所有同时在二维网格和字典中出现的单词。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻...原创 2019-03-11 15:40:56 · 1062 阅读 · 0 评论 -
用python写leetcode【19】----四数相加 II(454)
四数相加 II(454)题目给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有整数的范围在 -228 到 228 - 1 之间,最终结果不会超过 231 - 1 。例如:...原创 2019-03-27 18:54:29 · 244 阅读 · 1 评论