10 2020 档案

摘要:152. 乘积最大子数组 题目描述: 给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 示例 1: 输入: [2,3,-2,4] 输出: 6 解释: 子数组 [2,3] 有最大乘积 6。 示例 2: 输入: [-2,0,-1 阅读全文
posted @ 2020-10-31 21:04 Lucky小黄人^_^ 阅读(139) 评论(0) 推荐(0)
摘要:19. 删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 说明: 给定的 n 保证是有效的。 进阶: 你能尝试使用一趟扫描实 阅读全文
posted @ 2020-10-31 20:21 Lucky小黄人^_^ 阅读(174) 评论(0) 推荐(0)
摘要:55. 跳跃游戏 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 1: 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 阅读全文
posted @ 2020-10-31 19:37 Lucky小黄人^_^ 阅读(103) 评论(0) 推荐(0)
摘要:322. 零钱兑换 给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。 你可以认为每种硬币的数量是无限的。 示例 1: 输入:coins = [1, 2, 5], amount = 11 阅读全文
posted @ 2020-10-29 21:15 Lucky小黄人^_^ 阅读(111) 评论(0) 推荐(0)
摘要:分割等和子集 题目描述 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 注意: 每个数组中的元素不会超过 100 数组的大小不会超过 200 示例 1: 输入: [1, 5, 11, 5] 输出: true 解释: 数组可以分割成 [1, 5, 5] 和 阅读全文
posted @ 2020-10-28 21:23 Lucky小黄人^_^ 阅读(192) 评论(0) 推荐(0)
摘要:240. 搜索二维矩阵 II 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例: 现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12 阅读全文
posted @ 2020-10-27 21:47 Lucky小黄人^_^ 阅读(139) 评论(0) 推荐(0)
摘要:124. 二叉树中的最大路径和 题目描述 给定一个非空二叉树,返回其最大路径和。 本题中,路径被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。 示例 1: 示例 2: 思路:递归 思路参考:https://leetcode-cn. 阅读全文
posted @ 2020-10-27 20:44 Lucky小黄人^_^ 阅读(161) 评论(0) 推荐(0)
摘要:56. 合并区间 给出一个区间的集合,请合并所有重叠的区间。 示例 1: 输入: intervals = [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6]. 示例 阅读全文
posted @ 2020-10-26 21:32 Lucky小黄人^_^ 阅读(164) 评论(0) 推荐(0)
摘要:300. 最长上升子序列 给定一个无序的整数数组,找到其中最长上升子序列的长度。 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。 说明: 可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。 你算 阅读全文
posted @ 2020-10-25 21:30 Lucky小黄人^_^ 阅读(141) 评论(0) 推荐(0)
摘要:剑指 Offer 13. 机器人的运动范围 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能 阅读全文
posted @ 2020-10-22 14:53 Lucky小黄人^_^ 阅读(131) 评论(0) 推荐(0)
摘要:32. 最长有效括号 给定一个只包含 '(' 和 ')' 的字符串,找出最长的包含有效括号的子串的长度。 示例 1: 输入: "(()" 输出: 2 解释: 最长有效括号子串为 "()" 示例 2: 输入: ")()())" 输出: 4 解释: 最长有效括号子串为 "()()" 思路一:借助栈 思路 阅读全文
posted @ 2020-10-21 21:42 Lucky小黄人^_^ 阅读(149) 评论(0) 推荐(0)
摘要:20. 有效的括号 题目描述: 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。 示例 1: 输入: "()" 输出: true 示例  阅读全文
posted @ 2020-10-20 21:37 Lucky小黄人^_^ 阅读(125) 评论(0) 推荐(0)
摘要:494. 目标和 题目描述 给定一个非负整数数组,a1, a2, ..., an, 和一个目标数,S。现在你有两个符号 + 和 -。对于数组中的任意一个整数,你都可以从 + 或 -中选择一个符号添加在前面。 返回可以使最终数组和为目标数 S 的所有添加符号的方法数。 示例: 输入:nums: [1, 阅读全文
posted @ 2020-10-18 19:53 Lucky小黄人^_^ 阅读(126) 评论(0) 推荐(0)
摘要:128. 最长连续序列 题目描述: 给定一个未排序的整数数组,找出最长连续序列的长度。 要求算法的时间复杂度为 O(n)。 示例: 输入: [100, 4, 200, 1, 3, 2] 输出: 4 解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。 思路:HashSet 先把所有元素 阅读全文
posted @ 2020-10-16 10:24 Lucky小黄人^_^ 阅读(148) 评论(0) 推荐(0)
摘要:146. LRU缓存机制 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。 获取数据 get(key) - 如果关键字 (key) 存在于缓存中,则获取关键字的值(总是正数),否则返回 -1。写入数据 put 阅读全文
posted @ 2020-10-15 21:39 Lucky小黄人^_^ 阅读(161) 评论(0) 推荐(0)
摘要:621. 任务调度器 题目描述 给定一个用字符数组表示的 CPU 需要执行的任务列表。其中包含使用大写的 A - Z 字母表示的26 种不同种类的任务。任务可以以任意顺序执行,并且每个任务都可以在 1 个单位时间内执行完。CPU 在任何一个单位时间内都可以执行一个任务,或者在待命状态。 然而,两个相 阅读全文
posted @ 2020-10-15 20:27 Lucky小黄人^_^ 阅读(131) 评论(0) 推荐(0)
摘要:394. 字符串解码 题目描述 给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总 阅读全文
posted @ 2020-10-14 12:23 Lucky小黄人^_^ 阅读(234) 评论(0) 推荐(0)
摘要:17. 电话号码的字母组合 题目描述: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:"23" 输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "c 阅读全文
posted @ 2020-10-12 20:39 Lucky小黄人^_^ 阅读(153) 评论(0) 推荐(0)
摘要:75. 颜色分类 题目描述 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 注意: 不能使用代码库中的排序函数来解决这道题。 示例: 输入: [2, 阅读全文
posted @ 2020-10-12 19:40 Lucky小黄人^_^ 阅读(161) 评论(0) 推荐(0)
摘要:72. 编辑距离 题目描述: 给你两个单词 word1 和 word2,请你计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 插入一个字符删除一个字符替换一个字符 示例 1: 输入:word1 = "horse", word2 = "ros" 输出 阅读全文
posted @ 2020-10-12 17:34 Lucky小黄人^_^ 阅读(128) 评论(0) 推荐(0)
摘要:279. 完全平方数 题目描述 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 示例 1: 输入: n = 12 输出: 3 解释: 12 = 4 + 4 + 4. 示例 2: 输入: n = 13 输出: 阅读全文
posted @ 2020-10-12 12:04 Lucky小黄人^_^ 阅读(139) 评论(0) 推荐(0)
摘要:347. 前 K 个高频元素 题目描述 给定一个非空的整数数组,返回其中出现频率前 k 高的元素。 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], k = 1 输出: [1] 提示: 你可以假设给定的 k 总 阅读全文
posted @ 2020-10-11 10:57 Lucky小黄人^_^ 阅读(120) 评论(0) 推荐(0)
摘要:62. 不同路径 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径? 例如,上图是一个7 x 3 的网格。有多少可能的路径? 示例 1 阅读全文
posted @ 2020-10-10 21:01 Lucky小黄人^_^ 阅读(131) 评论(0) 推荐(0)
摘要:49. 字母异位词分组 给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。 示例: 输入: ["eat", "tea", "tan", "ate", "nat", "bat"] 输出: [ ["ate","eat","tea"], ["nat","tan"], [ 阅读全文
posted @ 2020-10-10 16:45 Lucky小黄人^_^ 阅读(166) 评论(0) 推荐(0)
摘要:11. 盛最多水的容器 给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且 阅读全文
posted @ 2020-10-10 15:20 Lucky小黄人^_^ 阅读(113) 评论(0) 推荐(0)
摘要:5. 最长回文子串 题目描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb" 思路一:中心扩展法 参考:ht 阅读全文
posted @ 2020-10-09 17:45 Lucky小黄人^_^ 阅读(150) 评论(0) 推荐(0)
摘要:647. 回文子串 题目描述 给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。 具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。 示例 1: 输入:"abc" 输出:3 解释:三个回文子串: "a", "b", "c" 示例 2: 输入:"aaa" 输出: 阅读全文
posted @ 2020-10-09 12:54 Lucky小黄人^_^ 阅读(169) 评论(0) 推荐(0)
摘要:739. 每日温度 题目描述 请根据每日 气温 列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用 0 来代替。 例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73 阅读全文
posted @ 2020-10-08 17:30 Lucky小黄人^_^ 阅读(130) 评论(0) 推荐(0)
摘要:287. 寻找重复数 给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。 示例 1: 输入: [1,3,4,2,2] 输出: 2 示例 2: 输入: [3,1,3,4,2] 输出: 阅读全文
posted @ 2020-10-08 10:51 Lucky小黄人^_^ 阅读(139) 评论(0) 推荐(0)
摘要:148. 排序链表 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 输入: 4->2->1->3 输出: 1->2->3->4 示例 2: 输入: -1->5->3->4->0 输出: -1->0->3->4->5 思路一:递归 + 归并 思路参考:https 阅读全文
posted @ 2020-10-07 20:56 Lucky小黄人^_^ 阅读(189) 评论(0) 推荐(0)
摘要:208. 实现 Trie (前缀树) 题目描述 实现一个 Trie (前缀树),包含 insert, search, 和 startsWith 这三个操作。 示例: Trie trie = new Trie(); trie.insert("apple"); trie.search("apple"); 阅读全文
posted @ 2020-10-07 16:26 Lucky小黄人^_^ 阅读(193) 评论(0) 推荐(0)
摘要:96. 不同的二叉搜索树 题目描述 给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例 思路一: 思路参考:https://leetcode-cn.com/problems/unique-binary-search-trees/solution/bu-tong-de-er 阅读全文
posted @ 2020-10-07 12:13 Lucky小黄人^_^ 阅读(244) 评论(0) 推荐(0)
摘要:剑指 Offer 38. 字符串的排列 题目描述 输入一个字符串,打印出该字符串中字符的所有排列。 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 示例: 输入:s = "abc" 输出:["abc","acb","bac","bca","cab","cba"] 限制: 1 <= s 的 阅读全文
posted @ 2020-10-06 18:07 Lucky小黄人^_^ 阅读(204) 评论(0) 推荐(0)
摘要:剑指 Offer 49. 丑数 我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。 示例: 输入: n = 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。 说明: 1 是丑数 阅读全文
posted @ 2020-10-05 17:25 Lucky小黄人^_^ 阅读(175) 评论(0) 推荐(0)
摘要:剑指 Offer 62. 圆圈中最后剩下的数字 0,1,,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩 阅读全文
posted @ 2020-10-05 12:12 Lucky小黄人^_^ 阅读(162) 评论(0) 推荐(0)
摘要:剑指 Offer 60. n个骰子的点数 把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值出现的概率。 你需要用一个浮点数数组返回答案,其中第 i 个元素代表这 n 个骰子所能掷出的点数集合中第 i 小的那个的概率。 示例 1: 输入: 1 输出: [0.16667 阅读全文
posted @ 2020-10-04 16:56 Lucky小黄人^_^ 阅读(235) 评论(0) 推荐(0)
摘要:剑指 Offer 46. 把数字翻译成字符串 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 示例 1: 输入: 1 阅读全文
posted @ 2020-10-04 16:54 Lucky小黄人^_^ 阅读(164) 评论(0) 推荐(0)
摘要:剑指 Offer 18. 删除链表的节点 给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。 注意:此题对比原题有改动 示例 1: 输入: head = [4,5,1,9], val = 5 输出: [4,1,9] 解释: 给定你链表中值为 5 的第二个节 阅读全文
posted @ 2020-10-04 11:46 Lucky小黄人^_^ 阅读(184) 评论(0) 推荐(0)
摘要:剑指 Offer 68 - I. 二叉搜索树的最近公共祖先 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的 阅读全文
posted @ 2020-10-04 10:10 Lucky小黄人^_^ 阅读(155) 评论(0) 推荐(0)
摘要:剑指 Offer 53 - II. 0~n-1中缺失的数字 题目描述 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 示例 1: 输入: [0,1,3] 输出: 2 示例 2: 输 阅读全文
posted @ 2020-10-03 20:50 Lucky小黄人^_^ 阅读(141) 评论(0) 推荐(0)
摘要:剑指 Offer 61. 扑克牌中的顺子 题目描述 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4,5] 输出: True 阅读全文
posted @ 2020-10-03 17:32 Lucky小黄人^_^ 阅读(241) 评论(0) 推荐(0)
摘要:剑指 Offer 67. 把字符串转换成整数 & leetcode8. 字符串转换整数 (atoi) 题目描述 写一个函数 StrToInt,实现把字符串转换成整数这个功能。不能使用 atoi 或者其他类似的库函数。 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。 阅读全文
posted @ 2020-10-03 14:57 Lucky小黄人^_^ 阅读(163) 评论(0) 推荐(0)
摘要:剑指 Offer 59 - II. 队列的最大值 题目描述 请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是O(1)。 若队列为空,pop_front 和 max_value 需要返回 -1 阅读全文
posted @ 2020-10-02 20:51 Lucky小黄人^_^ 阅读(146) 评论(0) 推荐(0)
摘要:剑指 Offer 53 - I. 在排序数组中查找数字 I 题目描述 统计一个数字在排序数组中出现的次数。 示例 1: 输入: nums = [5,7,7,8,8,10], target = 8 输出: 2 示例 2: 输入: nums = [5,7,7,8,8,10], target = 6 输出 阅读全文
posted @ 2020-10-01 21:21 Lucky小黄人^_^ 阅读(187) 评论(0) 推荐(0)
摘要:剑指 Offer 45. 把数组排成最小的数 输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 示例 1: 输入: [10,2] 输出: "102" 示例 2: 输入: [3,30,34,5,9] 输出: "3033459" 提示: 0 < nums.l 阅读全文
posted @ 2020-10-01 20:31 Lucky小黄人^_^ 阅读(172) 评论(0) 推荐(0)
摘要:剑指 Offer 34. 二叉树中和为某一值的路径 题目描述 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径。从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。 示例:给定如下二叉树,以及目标和 sum = 22, 返回: [ [5,4,11,2], [5,8,4,5 阅读全文
posted @ 2020-10-01 18:00 Lucky小黄人^_^ 阅读(180) 评论(0) 推荐(0)