自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(136)
  • 收藏
  • 关注

原创 21.乘积最大子数组

这里的推导比较绕,因为不断的出现「正数和负数」的分情况讨论,我们只需根据下面的规则,严。乘积为正数的最长子数组是 [-1,-2] 或者 [-2,-3]。表示「所有以 i 结尾的子数组,乘积为正数的最长子数组的长度」。最长乘积为正数的子数组为 [1,-2,-3] ,乘积为 6。为正数的最长子数组」,还需要一个「乘积为负数的最长子数组」。结尾的所有子数组中,乘积为「负数」的最长子数组的长度。输入:nums = [0,1,-2,-3,-4]​。输入:nums = [-1,-2,-3,0,1]​。

2025-06-08 19:42:04 333

原创 0.操作系统接口

从同一个原初文件描述符通过一系列fork和dup调用产生的文件描述符都共享同一个文件偏移,而其他情况下产生的文件描述符就不是这样的了,即使它们打开的都是同一个文件。管道右端可能也是一个带有管道的指令,如a|b|c,它fork两个新进程(一个b,一个,c),因此,shell可能要创建一个进程树。它的实现在第7850行。在这段代码的结尾,绑定在文件描述符1的文件有数据“hello world”,父进程的write会从子进程write结束的地方继续写(因为wait,父进程只在子进程结束之后才运行write)。

2025-06-07 21:37:33 497

原创 20.环形子数组的最大和(medium)

示例 1:输入:nums = [1,-2,3,-2]输出:3解释:从子数组 [3] 得到最大和 3示例 2:输入:nums = [5,-3,5]输出:10解释:从子数组 [5,5] 得到最大和 5 + 5 = 10示例 3:输入:nums = [3,-2,2,-3]输出:3解释:从子数组 [3] 和 [3,-2,2] 都可以得到最大和 3 提示: * n == nums.length * 1 <= n <= 3 * 104 * -3 * 104 <= nums[i] <= 3 * 104。

2025-06-07 17:38:30 493

原创 19.最大子数组和(medium)

示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6。示例 2:输入:nums = [1]输出:1示例 3:输入:nums = [5,4,-1,7,8]输出:23 提示: * 1 <= nums.length <= 105 * -104 <= nums[i] <= 104 进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的 分治法 求解。连续子数组 [4,-1,2,1] 的和最大,为 6。

2025-06-07 16:40:41 570

原创 18.买卖股票的最佳时机Ⅳ(hard)

在第 2 天 (股票价格 = 2) 的时候买入,在第 3 天 (股票价格 = 6) 的时候卖出, 这笔交易所能获得利润 = 6-2 = 4。在第 1 天 (股票价格 = 2) 的时候买入,在第 2 天 (股票价格 = 4) 的时候卖出,这笔交易所能获得利润 = 4-2 = 2。随后,在第 5 天 (股票价格 = 0) 的时候买入,在第 6 天 (股票价格 = 3) 的时候卖出, 这笔交易所能。上述两种情况,我们需要的是「最大值」,因此 f 的状态转移方程为:​。天的时候,手里「没有股票」,并且交易了。

2025-06-07 15:36:20 819

原创 17.买卖股票的最佳时机Ⅲ(hard)

你最多可以完成 两笔 交易。示例 1:输入:prices = [3,3,5,0,0,3,1,4]输出:6解释:在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3-0 = 3。示例 2:输入:prices = [1,2,3,4,5]输出:4解释:在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4。输入:prices = [3,3,5,0,0,3,1,4]​。

2025-06-06 23:48:06 962

原创 16.买卖股票的最佳时期含手续费(medium)

714. 买卖股票的最佳时机含手续费 - 给定一个整数数组 prices,其中 prices[i]表示第 i 天的股票价格;注意:这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。我们选择在「卖出」的时候,支付这个手续费,那么在「买入」的时候,就不用再考虑手续费的问题。输入:prices = [1, 3, 2, 8, 4, 9], fee = 2​。输入:prices = [1,3,7,5,10,3], fee = 3​。天结束后,处于「卖出」状态,此时的最大利润。

2025-06-01 17:20:17 841

原创 15.买卖股票的最佳时机包含冷冻期

设计一个算法计算出最大利润。处于「买入」状态的时候,我们现在有股票,此时不能买股票,只能继续持有股票,或者卖。对应的交易状态为: [买入, 卖出, 冷冻期, 买入, 卖出]​示例 2:​。天的时候,手上没有股票,也不在冷冻期,但是依旧啥也不干到第。根据「状态表示」,我们要三个表一起填,每一个表「从左往右」。:此时要想处于「买入」状态,必须把第一天的股票买了,因此。天结束后,处于「可交易」状态,此时的最大利润;天结束后,处于「冷冻期」状态,此时的最大利润。天结束后,处于「买入」状态,此时的最大利润;

2025-05-28 18:30:07 498

原创 14.粉刷房子(medium)

LCR 091. 粉刷房子 - 假如有一排房子,共 n 个,每个房子可以被粉刷成红色、蓝色或者绿色这三种颜色中的一种,你需要粉刷所有的房子并且使其相邻的两个房子颜色不能相同。costs[1][2] 表示第 1 号房子粉刷成绿色的花费,以此类推。示例 1:输入: costs = [[17,2,17],[16,16,5],[14,3,19]]输出: 10解释: 将 0 号房子粉刷成蓝色,1 号房子粉刷成绿色,2 号房子粉刷成蓝色。解释: 将 0 号房子粉刷成蓝色,1 号房子粉刷成绿色,2 号房子粉刷成蓝色。

2025-05-28 15:07:44 581

原创 13.删除并获得点数(medium)

示例 1:输入:nums = [3,4,2]输出:6解释:删除 4 获得 4 个点数,因此 3 也被删除。示例 2:输入:nums = [2,2,3,3,3,4]输出:9解释:删除 3 获得 3 个点数,接着要删除两个 2 和 4。之后,再次删除 3 获得 3 个点数,再次删除 3 获得 3 个点数。之后,再次删除 3 获得 3 个点数,再次删除 3 获得 3 个点数。删除 4 获得 4 个点数,因此 3 也被删除。输入:nums = [2,2,3,3,3,4]​。输入:nums = [3,4,2]​。

2025-05-28 14:32:24 795

原创 12.打家劫舍Ⅱ(medium)

示例 1:输入:nums = [2,3,2]输出:3解释:你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2), 因为他们是相邻的。示例 2:输入:nums = [1,2,3,1]输出:4解释:你可以先偷窃 1 号房屋(金额 = 1),然后偷窃 3 号房屋(金额 = 3)。你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2), 因为他们是相邻的。上一个问题是一个「单排」的模式,这一个问题是一个「环形」的模式,也就是首尾是相连的。偷第一个房屋时的最大金额。

2025-05-28 11:31:01 790

原创 11.按摩师(easy)

注意:本题相对原题稍作改动 示例 1:输入: [1,2,3,1]输出: 4解释: 选择 1 号预约和 3 号预约,总时长 = 1 + 3 = 4。示例 2:输入: [2,7,9,3,1]输出: 12解释: 选择 1 号预约、 3 号预约和 5 号预约,总时长 = 2 + 9 + 1 = 12。示例 3:输入: [2,1,4,5,3,1,1,3]输出: 12解释: 选择 1 号预约、 3 号预约、 5 号预约和 8 号预约,总时长 = 2 + 4 + 3 + 3 = 12。输入: [2,7,9,3,1]​。

2025-05-28 10:39:05 706

原创 2.Redis常见数据类型(字符串篇)

只是原则上命令的执行顺序是不确定的,但一定不会有两条命令被同步执行,如图 所示,可以想象 Redis内部只有一个服务窗口,多个客户端按照它们达到的先后顺序被排队在窗口前,依次接受 Redis 的服务,所以两条 incr 命令无论执行顺序,结果一定是 2,不会发生并发问题,这个就是 Redis 的单线程执行模型。如果某个命令执行过长,会导致其他命令全部处于等待队列中,迟迟等不到响应,造成客户端的阻塞,对于 Redis 这种高性能的服务来说是非常严重的,所以 Redis 是面向快速执行场景的数据库。

2025-05-27 22:46:14 757

原创 10.地下城游戏(hard)

其他房间要么是空的(房间里的值为 0),要么包含增加骑士健康点数的魔法球(若房间里的值为正整数,则表示骑士将增加健康点数)。示例 1:[https://assets.leetcode.com/uploads/2021/03/13/dungeon-grid-1.jpg]输入:dungeon = [[-2,-3,3],[-5,-10,1],[10,30,-5]]输出:7解释:如果骑士遵循最佳路径:右 -> 右 -> 下 -> 下 ,则骑士的初始健康点数至少为 7。位置出发,到达终点时所需的最低初始健康点数。

2025-05-27 20:08:17 574

原创 9.最小路径和(medium)

像这种表格形式的动态规划,是非常容易得到「状态表示」以及「状态转移方程」的,可以归结到「不同路径」一类的题里面。根据「状态转移方程」的推导来看,填表的顺序就是「从上往下」填每一行,每一行「从左往后」。在本题中,「添加一行」,并且「添加一列」后,所有位置的值可以初始化为无穷大,然后让。位置两种情况,并且我们要找的是最小路径,因此只需要这两种情况下的最小值,再加上。输入:grid = [[1,3,1],[1,5,1],[4,2,1]]​。根据「状态表示」,我们要返回的结果是。位置之前的一小步,有两种情况:​。

2025-05-27 19:36:01 780

原创 8.下降路径最小和(medium)

置 (row, col) 的下一个元素应当是 (row + 1, col - 1)、(row + 1, col) 或者 (row + 1, col + 1)。关于这一类题,由于我们做过类似的,因此「状态表示」以及「状态转移」是比较容易分析出来的。给你一个 n x n 的方形整数数组 matrix ,请你找出并返回通过 matrix 的下降路径的最小和。输入:matrix = [[2,1,3],[6,5,4],[7,8,9]]​。输入:matrix = [[-19,57],[-40,-5]]​。

2025-05-27 19:17:22 683

原创 7.礼物的最大价值(medium)

拿取珠宝的规则为: * 只能从架子的左上角开始拿珠宝 * 每次可以移动到右侧或下侧的相邻位置 * 到达珠宝架子的右下角时,停止拿取注意:珠宝的价值都是大于 0 的。示例 1:输入:frame = [[1,3,1],[1,5,1],[4,2,1]]输出:12解释:路径 1→3→5→2→1 可以拿到最高价值的珠宝 提示: * 0 < frame.length <= 200 * 0 < frame[0].length <= 200。根据「状态转移方程」,填表的顺序是「从上往下填写每一行」,「每一行从左往右」。

2025-05-27 18:21:40 450

原创 6.不同路径Ⅱ(medium)

示例 1:[https://assets.leetcode.com/uploads/2020/11/04/robot1.jpg]输入:obstacleGrid = [[0,0,0],[0,1,0],[0,0,0]]输出:2解释:3x3 网格的正中间有一个障碍物。本题为不同路径的变型,只不过有些地方有「障碍物」,只要在「状态转移」上稍加修改就可解决。根据「状态转移」的推导,填表的顺序就是「从上往下」填每一行,每一行「从左往右」。向右 -> 向右 -> 向下 -> 向下​。3x3 网格的正中间有一个障碍物。

2025-05-27 17:58:27 736

原创 5.不同路径(medium)

62. 不同路径 - 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。1. 向右 -> 向下 -> 向下2. 向下 -> 向下 -> 向右3. 向下 -> 向右 -> 向下示例 3:输入:m = 7, n = 3输出:28示例 4:输入:m = 3, n = 3输出:6 提示: * 1 <= m, n <= 100 * 题目数据保证答案小于等于 2 * 109。根据「状态转移方程」的推导来看,填表的顺序就是「从上往下」填每一行,在填写每一行的时候「从左往右」。

2025-05-27 17:43:01 930

原创 4.解码方法(medium)

91. 解码方法 - 一条包含字母 A-Z 的消息通过以下映射进行了 编码 :"1" -> 'A'"2" -> 'B'..."25" -> 'Y'"26" -> 'Z'然而,在 解码 已编码的消息时,你意识到有许多不同的方式来解码,因为有些编码被包含在其它编码当中("2" 和 "5" 与 "25")。示例 3:输入:s = "06"输出:0解释:"06" 无法映射到 "F" ,因为存在前导零("6" 和 "06" 并不等价)。它可以解码为 "AB"(1 2)或者 "L"(12)。

2025-05-27 17:29:54 662

原创 Java基础-牛客面经28问(前五)

引用类型(如类,数组,接口)存储对象内存地址,实际对象存储在堆内存,默认值为null,两者核心区别在于存储方式和分配机制。在Java中,接口(Interface)和抽象类(Abstract Class)都是实现多态和代码复用的核心机制,但它们的设计目的和使用场景有显著差异。在Java中,static关键字用于修饰类的成员(变量、方法、代码块、嵌套类),表示这些成员属于类本身,而非类的某个实例。Java有8种基本数据类型,直接存储具体的数值,内存分配在栈(Stack)中,速度快但功能简单。

2025-05-27 15:27:31 1000

原创 1.初识Redis

站在数据冷热的角度,数据分为热数据和冷数据,热数据通常是指需要频繁操作的数据,反之为冷数据,例如对于视频网站来说,视频基本信息基本上在各个业务线都是经常要操作的数据,而用户的观看记录不一定是经常需要访问的数据,这里暂且不讨论两者数据规模的差异,单纯站在数据冷热的角度上看,视频信息属于热数据,用户观看记录属于冷数据。如果将这些冷数据放在 Redis上,基本上是对于内存的一种浪费,但是对于一些热数据可以放在 Redis 中加速读写,也可以减轻后端存储的负载,可以说是事半功倍。目前最新的版本是 7 版本。

2025-05-26 23:23:11 1239

原创 服务端高并发分布式结构演进之路

想象一下,银行管理的账户金额,如果收到一笔转账之后,一份数据库的数据修改了,但另外的数据库没有修改,则用户得到的存款金额将是错误的。,但是这只是一个逻辑的数据库整体,数据库里不同的组成部分是由不同的组件单独来实现的,如分库分表的管理和请求分发,由Mycat实现,SQL的解析由单机的数据库实现,读写分离可能由网关和消息队列来实现,查询结果的汇总可能由数据库接口层来实现等等,这种架构其实是MPP(大规模并行处理)架构的一类实现。从库的所有数据全部来自主库的数据,经过同步后,从库可以维护着与主库一致的数据。

2025-05-26 00:03:10 498

原创 Redis Java使用

要想本地主机能访问redis,需要把redis的端口通过云服务器后台页面的“防火墙/安全组"放开端口到公网上。注意:在代码中另起一个线程,直接通过jedis这个连接插入数据是不行的,必须另起一个jedis连接。因此我们可以使用端口转发的方式,直接把服务器的redis端口映射到本地。Java操作redis的客户端有很多,其中最知名的是jedis。此时,访问本地的8888,就相当于访问对应服务器的6379.需要在创建实例的时候,把多个节点的地址,都设置进去。将远程服务器上的某个端口转发到本地机器的某个端口。

2025-05-25 21:48:16 1236

原创 29.重构字符串

767. 重构字符串 - 给定一个字符串 s ,检查是否能重新排布其中的字母,使得两相邻的字符不同。返回 s 的任意可能的重新排列。若不可行,返回空字符串 ""。示例 1:输入: s = "aab"输出: "aba"示例 2:输入: s = "aaab"输出: "" 提示: * 1 <= s.length <= 500 * s 只包含小写字母。,检查是否能重新排布其中的字母,使得两相邻的字符不同。的任意可能的重新排列。输入: s = "aaab"​。输入: s = "aab"​。输出: "aba"​。

2025-05-25 17:31:18 374

原创 28.距离相等的条形码(medium)

示例 1:输入:barcodes = [1,1,1,2,2,2]输出:[2,1,2,1,2,1]示例 2:输入:barcodes = [1,1,1,1,2,2,3,3]输出:[1,3,1,3,2,1,2,1] 提示: * 1 <= barcodes.length <= 10000 * 1 <= barcodes[i] <= 10000。输入:barcodes = [1,1,1,1,2,2,3,3]​。输入:barcodes = [1,1,1,2,2,2]​。输出:[1,3,1,3,2,1,2,1]​。

2025-05-25 17:04:11 421

原创 27.可被三整除的最大和(medium)

示例 1:输入:nums = [3,6,5,1,8]输出:18解释:选出数字 3, 6, 1 和 8,它们的和是 18(可被 3 整除的最大和)。示例 3:输入:nums = [1,2,3,4,4]输出:12解释:选出数字 1, 3, 4 以及 4,它们的和是 12(可被 3 整除的最大和)。解释:选出数字 3, 6, 1 和 8,它们的和是 18(可被 3 整除的最大和)。解释:选出数字 1, 3, 4 以及 4,它们的和是 12(可被 3 整除的最大和)。输入:nums = [1,2,3,4,4]​。

2025-05-25 16:39:30 883

原创 26.俄罗斯套娃信封问题(hard)

示例 1:输入:envelopes = [[5,4],[6,4],[6,7],[2,3]]输出:3解释:最多信封的个数为 3, 组合为: [2,3] => [5,4] => [6,7]。示例 2:输入:envelopes = [[1,1],[1,1],[1,1]]输出:1 提示: * 1 <= envelopes.length <= 105 * envelopes[i].length == 2 * 1 <= wi, hi <= 105。位置的信封为结尾的所有套娃序列中,最长的套娃序列的长度;

2025-05-25 15:10:01 717

原创 25.整数替换(medium)

397. 整数替换 - 给定一个正整数 n ,你可以做如下操作: 1. 如果 n 是偶数,则用 n / 2替换 n。2. 如果 n 是奇数,则可以用 n + 1或n - 1替换 n。示例 1:输入:n = 8输出:3解释:8 -> 4 -> 2 -> 1示例 2:输入:n = 7输出:4解释:7 -> 8 -> 4 -> 2 -> 1或 7 -> 6 -> 3 -> 2 -> 1示例 3:输入:n = 4输出:2 提示: * 1 <= n <= 231 - 1。是连续1(取低两位 0 --3)

2025-05-25 13:14:36 572

原创 24.用最少数量的箭引爆气球(medium()

示例 1:输入:points = [[10,16],[2,8],[1,6],[7,12]]输出:2解释:气球可以用2支箭来爆破:-在x = 6处射出箭,击破气球[2,8]和[1,6]。示例 2:输入:points = [[1,2],[3,4],[5,6],[7,8]]输出:4解释:每个气球需要射出一支箭,总共需要4支箭。示例 3:输入:points = [[1,2],[2,3],[3,4],[4,5]]输出:2解释:气球可以用2支箭来爆破:- 在x = 2处发射箭,击破气球[1,2]和[2,3]。

2025-05-25 11:12:15 853

原创 23.无重叠区间(medium)

示例 1:输入: intervals = [[1,2],[2,3],[3,4],[1,3]]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。示例 2:输入: intervals = [ [1,2], [1,2], [1,2] ]输出: 2解释: 你需要移除两个 [1,2] 来使剩下的区间没有重叠。输入:intervals = [[1,2],[2,3],[3,4],[1,3]]​。输入:intervals = [ [1,2], [1,2], [1,2] ]​。「区间范围较大」的区间移除。

2025-05-25 10:50:17 949

原创 22.合并区间

示例 1:输入:intervals = [[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:输入:intervals = [[1,4],[4,5]]输出:[[1,5]]解释:区间 [1,4] 和 [4,5] 可被视为重叠区间。输入:intervals = [[1,3],[2,6],[8,10],[15,18]]​。输出:[[1,6],[8,10],[15,18]]​。

2025-05-24 21:28:02 455

原创 21.坏了的计算器(medium)

示例 1:输入:startValue = 2, target = 3输出:2解释:先进行双倍运算,然后再进行递减运算 {2 -> 4 -> 3}.示例 2:输入:startValue = 5, target = 8输出:2解释:先递减,再双倍 {5 -> 4 -> 8}.示例 3:输入:startValue = 3, target = 10输出:3解释:先双倍,然后递减,再双倍 {3 -> 6 -> 5 -> 10}. 提示: * 1 <= startValue, target <= 109。

2025-05-24 20:20:00 454

原创 20.单调递增的数字(medium)

738. 单调递增的数字 - 当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。示例 1:输入: n = 10输出: 9示例 2:输入: n = 1234输出: 1234示例 3:输入: n = 332输出: 299 提示: * 0 <= n <= 109。当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。​给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈单调递增。输入: n = 1234​。

2025-05-24 18:31:39 232

原创 19.加油站

1.题目链接:134. 加油站 - 力扣(LeetCode)134. 加油站 - 在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。给定两个整数数组 gas 和 cost ,如果你可以按顺序绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。如果存在解,则 保证 它是 唯一 的。

2025-05-24 18:01:27 854

原创 18.跳跃游戏(medium)

1.题目链接55. 跳跃游戏 - 力扣(LeetCode)55. 跳跃游戏 - 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回 true;否则,返回 false。示例 1:输入:nums = [2,3,1,1,4]输出:true解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。

2025-05-24 16:13:52 646

原创 17.跳跃游戏Ⅱ(medium)

换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处: * 0 <= j <= nums[i] * i + j < n返回到达 nums[n - 1] 的最小跳跃次数。从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。示例 2:输入: nums = [2,3,0,1,4]输出: 2 提示: * 1 <= nums.length <= 104 * 0 <= nums[i] <= 1000 * 题目保证可以到达 nums[n-1]

2025-05-24 15:24:55 705

原创 16.最优除法(medium)

其他用例:1000/(100/10)/2 = 501000/(100/(10/2)) = 501000/100/10/2 = 0.51000/100/(10/2) = 2 示例 2:输入: nums = [2,3,4]输出: "2/(3/4)"解释: (2/(3/4)) = 8/3 = 2.667可以看出,在尝试了所有的可能性之后,我们无法得到一个结果大于 2.667 的表达式。解释: 1000/(100/10/2) = 1000/((100/10)/2) = 200​。输出: "2/(3/4)"​。

2025-05-24 14:05:09 575

原创 15.分发饼干(easy)

1.题目连接:942. 增减字符串匹配 - 力扣(LeetCode)942. 增减字符串匹配 - 由范围 [0,n] 内所有整数组成的 n + 1 个整数的排列序列可以表示为长度为 n 的字符串 s ,其中: * 如果 perm[i] < perm[i + 1] ,那么 s[i] == 'I' * 如果 perm[i] > perm[i + 1] ,那么 s[i] == 'D' 给定一个字符串 s ,重构排列 perm 并返回它。如果有多个有效排列perm,则返回其中 任何一个。

2025-05-24 12:57:35 554

原创 14.增减字符串匹配(easy)

1.题目链接:942. 增减字符串匹配 - 力扣(LeetCode)942. 增减字符串匹配 - 由范围 [0,n] 内所有整数组成的 n + 1 个整数的排列序列可以表示为长度为 n 的字符串 s ,其中: * 如果 perm[i] < perm[i + 1] ,那么 s[i] == 'I' * 如果 perm[i] > perm[i + 1] ,那么 s[i] == 'D' 给定一个字符串 s ,重构排列 perm 并返回它。如果有多个有效排列perm,则返回其中 任何一个。

2025-05-23 12:41:40 534

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除