04 2022 档案

摘要:给定一个整数数组prices,其中 prices[i] 表示第 i 天的股票价格 。 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。 注意:你不能同时参与多笔交易(你必须在再次购买前出 阅读全文
posted @ 2022-04-28 18:38 Vonos 阅读(97) 评论(0) 推荐(0) 编辑
摘要:给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 阅读全文
posted @ 2022-04-27 19:05 Vonos 阅读(84) 评论(0) 推荐(0) 编辑
摘要:给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '' 的正则表达式匹配。 '.' 匹配任意单个字符 '' 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖整个字符串 s的,而不是部分字符串。 示例1: 输入:s = "aa", p = "a" 输出:false 解释:"a" 阅读全文
posted @ 2022-04-26 11:57 Vonos 阅读(156) 评论(0) 推荐(0) 编辑
摘要:最初记事本上只有一个字符 'A' 。你每次可以对这个记事本进行两种操作: Copy All(复制全部):复制这个记事本中的所有字符(不允许仅复制部分字符)。 Paste(粘贴):粘贴 上一次 复制的字符。 给你一个数字 n ,你需要使用最少的操作次数,在记事本上输出 恰好 n 个 'A' 。返回能够 阅读全文
posted @ 2022-04-26 11:51 Vonos 阅读(55) 评论(0) 推荐(0) 编辑
摘要:给你两个单词 word1 和 word2,请返回将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个字符 示例: 输入:word1 = "horse", word2 = "ros" 输出:3 解释: horse → ro 阅读全文
posted @ 2022-04-26 10:40 Vonos 阅读(148) 评论(0) 推荐(0) 编辑
摘要:给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无限的。 示例: 输入:coins = [1, 2, 5], amount 阅读全文
posted @ 2022-04-25 18:49 Vonos 阅读(90) 评论(0) 推荐(0) 编辑
摘要:给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。 示例: 输入:strs = ["10", "0001", "111 阅读全文
posted @ 2022-04-25 18:24 Vonos 阅读(47) 评论(0) 推荐(0) 编辑
摘要:给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 示例: 输入:nums = [1,5,11,5] 输出:true 解释:数组可以分割成 [1, 5, 5] 和 [11] 。 本题等价于 0-1 背包问题,设所有数字和为 sum 阅读全文
posted @ 2022-04-25 18:04 Vonos 阅读(96) 评论(0) 推荐(0) 编辑
摘要:给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。 例如,"ace" 是 "a 阅读全文
posted @ 2022-04-24 11:39 Vonos 阅读(133) 评论(0) 推荐(0) 编辑
摘要:给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 示例1: 输入:nums = [10,9,2,5,3,7,101,18] 阅读全文
posted @ 2022-04-24 11:16 Vonos 阅读(185) 评论(0) 推荐(0) 编辑
摘要:给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 示例: 输入: s = "applepenapple", wordDict = ["apple", "pen" 阅读全文
posted @ 2022-04-23 18:28 Vonos 阅读(74) 评论(0) 推荐(0) 编辑
摘要:一条包含字母 A-Z 的消息通过以下映射进行了 编码 : 'A' → "1" 'B' → "2" ... 'Z' → "26" 要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。例如,"11106" 可以映射为: "AAJF" ,将消息分组为 (1 1 10 阅读全文
posted @ 2022-04-23 12:21 Vonos 阅读(46) 评论(0) 推荐(0) 编辑
摘要:给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。 完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和 11 不是。 示例: 输入:n = 13 输出:2 解释:13 = 4 + 9 方法1:动态规 阅读全文
posted @ 2022-04-23 11:03 Vonos 阅读(121) 评论(0) 推荐(0) 编辑
摘要:在一个由 '0' 和 '1' 组成的二维矩阵内,找到只包含 '1' 的最大正方形,并返回其面积。 示例: 输入:matrix = [["1","0","1","0","0"],["1","0","1","1","1"],["1","1","1","1","1&q 阅读全文
posted @ 2022-04-21 11:39 Vonos 阅读(264) 评论(0) 推荐(0) 编辑
摘要:给定一个由 0 和 1 组成的矩阵 mat ,请输出一个大小相同的矩阵,其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 示例: 输入:mat = [[0,0,0],[0,1,0],[0,0,0]] 输出:[[0,0,0],[0,1,0],[0,0,0] 阅读全文
posted @ 2022-04-21 10:55 Vonos 阅读(48) 评论(0) 推荐(0) 编辑
摘要:给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例: 输入:grid = [[1,3,1],[1,5,1],[4,2,1]] 输出:7 解释:因为路径 1→3→1→1→1 的总和最小。 创建 阅读全文
posted @ 2022-04-19 22:32 Vonos 阅读(83) 评论(0) 推荐(0) 编辑
摘要:如果一个数列 至少有三个元素 ,并且任意两个相邻元素之差相同,则称该数列为等差数列。 例如,[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差数列。 给你一个整数数组 nums ,返回数组 nums 中所有为等差数组的 子数组 个数。 子数组 是数组中的一个连续序列。 阅读全文
posted @ 2022-04-18 20:01 Vonos 阅读(71) 评论(0) 推荐(0) 编辑
摘要:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。 示例 阅读全文
posted @ 2022-04-18 16:45 Vonos 阅读(27) 评论(0) 推荐(0) 编辑
摘要:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例: 输入:n = 3 输出:3 解释:有三种方法可以爬到楼顶。 1、1 阶 + 1 阶 + 1 阶 2、1 阶 + 2 阶 3、2 阶 + 1 阶 这是十分经典的斐波那契数列题 阅读全文
posted @ 2022-04-17 22:57 Vonos 阅读(39) 评论(0) 推荐(0) 编辑
摘要:给定一个只包含加、减和乘法的数学表达式,求通过加括号可以得到多少种不同的结果。 示例:输入是一个字符串,表示数学表达式;输出是一个数组,存储所有不同的加括号结果 输入:expression = "23-45" 输出:[-34,-14,-10,-10,10] 解释: (2*(3-(45))) = -3 阅读全文
posted @ 2022-04-11 22:02 Vonos 阅读(49) 评论(0) 推荐(0) 编辑
摘要:给你一个字符串 s 和一个整数 k ,请你找出 s 中的最长子串, 要求该子串中的每一字符出现次数都不少于 k 。返回这一子串的长度。 提示:s 仅由小写英文字母组成 示例: 输入:s = "ababbc", k = 2 输出:5 解释:最长子串为 "ababb" ,其中 'a' 重复了 2 次, 阅读全文
posted @ 2022-04-11 21:42 Vonos 阅读(95) 评论(0) 推荐(0) 编辑
摘要:给定一个长度为 n 的整数数组 arr ,它表示在 [0, n - 1] 范围内的整数的排列。 我们将 arr 分割成若干 块 (即分区),并对每个块单独排序。将它们连接起来后,使得连接的结果和按升序排序后的原数组相同。 返回数组能分成的最多块数量。 示例; 输入: arr = [1,0,2,3,4 阅读全文
posted @ 2022-04-09 21:58 Vonos 阅读(35) 评论(0) 推荐(0) 编辑
摘要:编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例: 输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,1 阅读全文
posted @ 2022-04-09 21:19 Vonos 阅读(34) 评论(0) 推荐(0) 编辑
摘要:给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。 示例: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[[7,4,1] 阅读全文
posted @ 2022-04-09 20:45 Vonos 阅读(76) 评论(0) 推荐(0) 编辑
摘要:给定整数 n ,返回 所有小于非负整数 n 的质数的数量 示例: 输入:n = 10 输出:4 解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。 厄拉多塞筛法(Sieve of Eratosthenes),简称埃氏筛法,是非常常用的、判断一个整数是否是质数的方法。并且它可以 阅读全文
posted @ 2022-04-04 22:20 Vonos 阅读(110) 评论(0) 推荐(0) 编辑
摘要:给定一个二维的 0-1 矩阵,其中 0 表示海洋, 1 表示陆地。单独的或相邻的陆地可以形成岛屿,每个格子只与其上下左右四个格子相邻。求最大的岛屿面积。 输入是一个二维数组,输出是一个整数,表示最大的岛屿面积。 示例: 输入:grid = [[0,0,1,0,0,0,0,1,0,0,0,0,0],[ 阅读全文
posted @ 2022-04-04 21:23 Vonos 阅读(98) 评论(0) 推荐(0) 编辑
摘要:给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] **进阶:**你所设计算法的时间复杂度 必须 优于 O(nlogn) ,其中 n 是数组大小 阅读全文
posted @ 2022-04-04 20:50 Vonos 阅读(31) 评论(0) 推荐(0) 编辑
摘要:给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例: 输入: [3,2,1,5,6,4] 和 k = 2 输出: 5 [基于快排的所有TopK问题简单python模板](https://le 阅读全文
posted @ 2022-04-04 20:29 Vonos 阅读(36) 评论(0) 推荐(0) 编辑
摘要:已知存在一个按非降序排列的整数数组 nums ,数组中的值不必互不相同。 在传递给函数之前,nums 在预先未知的某个下标 k(0 ⇐ k < nums.length)上进行了 旋转 ,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[ 阅读全文
posted @ 2022-04-04 18:52 Vonos 阅读(96) 评论(0) 推荐(0) 编辑
摘要:给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 **进阶:**可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗? 示例1: 输入:nums = [5,7 阅读全文
posted @ 2022-04-03 23:37 Vonos 阅读(58) 评论(0) 推荐(0) 编辑
摘要:给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。 **注意:**不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。 示例: 输入:x = 8 输出:2 解释:8 的算术平方根是 2. 阅读全文
posted @ 2022-04-03 22:16 Vonos 阅读(158) 评论(0) 推荐(0) 编辑
摘要:给定一个区间的集合 intervals ,其中 intervals[i] = [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 示例: 输入: intervals = [[1,2],[2,3],[3,4],[1,3]] 输出: 1 解释: 移除 [1,3] 后,剩 阅读全文
posted @ 2022-04-02 23:49 Vonos 阅读(274) 评论(0) 推荐(0) 编辑
摘要:n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求,给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。 相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目 。 示例1: 输入:ratings = [ 阅读全文
posted @ 2022-04-02 22:49 Vonos 阅读(104) 评论(0) 推荐(0) 编辑
摘要:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得 阅读全文
posted @ 2022-04-02 16:15 Vonos 阅读(90) 评论(0) 推荐(0) 编辑
摘要:给你一个大小为 m x n 的矩阵 board 表示甲板,其中,每个单元格可以是一艘战舰 'X' 或者是一个空位 '.' ,返回在甲板 board 上放置的 战舰 的数量。 战舰只能水平或者垂直放置在 board 上。换句话说,战舰只能按 1 x k(1 行,k 列)或 k x 1(k 行,1 列) 阅读全文
posted @ 2022-04-01 16:34 Vonos 阅读(33) 评论(0) 推荐(0) 编辑
摘要:给你一个 m x n 的矩阵 M ,初始化时所有的 0 和一个操作数组 op ,其中 ops[i] = [ai, bi] 意味着当所有的 0 ⇐ x < ai 和 0 ⇐ y < bi 时, M[x][y] 应该加 1。 在 执行完所有操作后 ,计算并返回 矩阵中最大整数的个数 。 示例: 输入: 阅读全文
posted @ 2022-04-01 16:17 Vonos 阅读(38) 评论(0) 推荐(0) 编辑
摘要:图像平滑器 是大小为 3 x 3 的过滤器,用于对图像的每个单元格平滑处理,平滑处理后单元格的值为该单元格的平均灰度。 每个单元格的 平均灰度 定义为:该单元格自身及其周围的 8 个单元格的平均值,结果需向下取整。(即,需要计算蓝色平滑器中 9 个单元格的平均值)。 如果一个单元格周围存在单元格缺失 阅读全文
posted @ 2022-04-01 15:49 Vonos 阅读(31) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示