LeetCode
love music.
中山大学计算机博士在读,曾就职于腾讯等公司,目前从事AI多模态大模型研究。
展开
-
leetcode 75. 颜色分类
给定一个包含红色、白色和蓝色,一共n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]进阶:一个直观的解决方案是使用计数排序的两趟扫描算法。首...原创 2019-08-31 19:39:03 · 106 阅读 · 0 评论 -
leetcode 76. 最小覆盖子串(双端指针)
给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。示例:输入: S = "ADOBECODEBANC", T = "ABC"输出: "BANC"说明:如果 S 中不存这样的子串,则返回空字符串 ""。如果 S 中存在这样的子串,我们保证它是唯一的答案。解析:使用双端指针即可。移动right一直到满足条件,满足时再移动left求得...原创 2019-08-31 19:44:30 · 161 阅读 · 0 评论 -
leetcode 84. 柱状图中最大的矩形(分治法)
求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为 [2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为 10 个单位。示例:输入: [2,1,5,6,2,3]输出: 10参考链接:https://leetcode-cn.com/problems/largest-rectangle-in-his...原创 2019-09-04 21:32:53 · 513 阅读 · 1 评论 -
leetcode 915. 分割数组
给定一个数组A,将其划分为两个不相交(没有公共元素)的连续子数组left和right,使得:left中的每个元素都小于或等于right中的每个元素。left 和right都是非空的。left要尽可能小。在完成这样的分组后返回left的长度。可以保证存在这样的划分方法。示例 1:输入:[5,0,3,8,6]输出:3解释:left = [5,0,3],r...原创 2019-09-07 11:41:21 · 223 阅读 · 0 评论 -
leetcode 96. 不同的二叉搜索树(动态规划)
给定一个整数 n,求以1 ...n为节点组成的二叉搜索树有多少种?示例:输入: 3输出: 5解释:给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 ...原创 2019-09-15 19:50:54 · 138 阅读 · 0 评论 -
leetcode 139. 单词拆分(动态规划)
给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定s 是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。示例 1:输入: s = "leetcode", wordDict = ["leet", "code"]输出: true解释: 返回 true 因为 "leetcode"...原创 2019-10-10 13:14:09 · 313 阅读 · 0 评论 -
leetcode 322. 零钱兑换(动态规划)
给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回-1。示例1:输入: coins = [1, 2, 5], amount = 11输出: 3解释: 11 = 5 + 5 + 1示例 2:输入: coins = [2], amount = 3输出: -1说明...原创 2019-10-10 20:11:13 · 262 阅读 · 0 评论