自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(206)
  • 资源 (1)
  • 收藏
  • 关注

原创 力扣hot100第五天

给定一个二叉树的根节点 root ,返回 它的 中序 遍历。

2025-02-16 16:14:33 1136

原创 力扣hot100第四天

新节点的 next 指针和 random 指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。给定一个链表的头节点 head ,返回链表开始入环的第一个节点。新链表是通过拼接给定的两个链表的所有节点组成的。给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。

2025-02-16 15:51:17 766

原创 力扣hot100第三天

给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。请 不要使用除法,且在 O(n) 时间复杂度内完成此题。题意:求数组除了某个元素之外所有元素的乘积思路:和接雨水一模一样,只不过取最大值换成了数值相乘。

2025-02-14 21:27:24 893

原创 力扣hot100第二天

给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回 滑动窗口中的最大值。

2025-02-13 22:51:12 576

原创 力扣hot100刷题第一天

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。你可以按任意顺序返回答案。题意:从给定数组中找到两个数的和为target,返回这两个数的下标思路:使用哈希表存储数和对应下标,遍历的同时进行寻找。

2025-02-10 21:22:23 842

原创 力扣--LCR146.螺旋遍历二维数组

给定一个二维数组 array,请返回「螺旋遍历」该数组的结果。螺旋遍历:从左上角开始,按照 向右、向下、向左、向上 的顺序 依次 提取元素,然后再进入内部一层重复相同的步骤,直到提取完所有元素。示例 1:输入:array = [[1,2,3],[8,9,4],[7,6,5]]输出:[1,2,3,4,5,6,7,8,9]示例 2:输入:array = [[1,2,3,4],[12,13,14,5],[11,16,15,6],[10,9,8,7]]

2025-01-08 14:11:07 532

原创 力扣--54.螺旋矩阵

给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。

2025-01-08 11:17:46 319

原创 力扣--76.最小覆盖子串

给你一个字符串 s 、一个字符串 t。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “”。示例 1:输入:s = “ADOBECODEBANC”, t = “ABC”输出:“BANC”解释:最小覆盖子串 “BANC” 包含来自字符串 t 的 ‘A’、‘B’ 和 ‘C’。示例 2:输入:s = “a”, t = “a”输出:“a”解释:整个字符串 s 是最小覆盖子串。示例 3:输入: s = “a”, t = “aa”

2025-01-07 21:36:29 250

原创 力扣904.水果成篮

你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组 fruits 表示,其中 fruits[i] 是第 i 棵树上的水果 种类。你想要尽可能多地收集水果。给你一个整数数组 fruits ,返回你可以收集的水果的 最大 数目。示例 1:输入:fruits = [1,2,1]输出:3解释:可以采摘全部 3 棵树。示例 2:输入:fruits = [0,1,2,2]输出:3解释:可以采摘 [1,2,2] 这三棵树。

2025-01-07 21:10:45 581

原创 力扣--83.删除排序链表中的重复元素

给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次。返回 已排序的链表。

2025-01-07 20:40:21 290

原创 力扣--167.两数之和II 输入有效数组

给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] ,则 1 <= index1 < index2 <= numbers.length。以长度为 2 的整数数组 [index1, index2] 的形式返回这两个整数的下标 index1 和 index2。

2025-01-07 20:31:57 486

原创 力扣--977.有序数组的平方

给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例 1:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]示例 2:输入:nums = [-7,-3,2,3,11]输出:[4,9,9,49,121]

2025-01-07 20:01:59 286

原创 力扣--844.比较含退格的字符串

给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true。# 代表退格字符。注意:如果对空文本输入退格字符,文本继续为空。示例 1:输入:s = “ab#c”, t = “ad#c”输出:true解释:s 和 t 都会变成 “ac”。示例 2:输入:s = “ab##”, t = “c#d#”输出:true解释:s 和 t 都会变成 “”。示例 3:输入:s = “a#c”, t = “b”输出:false。

2025-01-07 19:52:01 310

原创 力扣--283.移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。示例 1:输入: nums = [0,1,0,3,12]输出: [1,3,12,0,0]示例 2:输入: nums = [0]输出: [0]

2025-01-07 19:18:54 559

原创 力扣--26.删除有序数组中的重复项&&80.删除有序数组中的重复项II

给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致。然后返回 nums 中唯一元素的个数。判题标准:系统会用下面的代码来测试你的题解:// 输入数组// 长度正确的期望答案// 调用i < k;i++) {如果所有断言都通过,那么您的题解将被 通过。示例 1:输入:nums = [1,1,2]输出:2, nums = [1,2,_]

2025-01-07 19:13:37 717

原创 力扣--34.在排序数组中查找元素的第一个和最后一个位置

给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。

2025-01-05 17:15:41 729

原创 力扣--35.搜索插入位置

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例 2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4。

2025-01-05 12:59:14 373

原创 力扣--494.目标和

给你一个非负整数数组 nums 和一个整数 target。返回可以通过上述方法构造的、运算结果等于 target 的不同 表达式 的数目。示例 1:输入:nums = [1,1,1,1,1], target = 3输出:5解释:一共有 5 种方法让最终目标和为 3。示例 2:输入:nums = [1], target = 1输出:1。

2025-01-04 22:05:45 476

原创 力扣--1049.最后一块石头重量II

有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。最后,最多只会剩下一块 石头。返回此石头 最小的可能重量。如果没有石头剩下,就返回 0。示例 1:输入:stones = [2,7,4,1,8,1]输出:1解释:组合 2 和 4,得到 2,所以数组转化为 [2,7,1,8,1],

2025-01-04 21:03:23 159

原创 力扣--416.分割等和子集

给你一个 只包含正整数 的 非空 数组 nums。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。示例 1:输入:nums = [1,5,11,5]输出:true解释:数组可以分割成 [1, 5, 5] 和 [11]。示例 2:输入:nums = [1,2,3,5]输出:false解释:数组不能分割成两个元素和相等的子集。

2025-01-04 15:48:32 158

原创 力扣--96.不同的二叉搜索树

n为3的时候当1为头结点的时候,其右子树有两个节点,这两个节点的布局,和 n 为2的时候两棵树的布局是一样的!当3为头结点的时候,其左子树有两个节点,这两个节点的布局,和n为2的时候两棵树的布局也是一样的!当2为头结点的时候,其左右子树都只有一个节点,布局和n为1的时候只有一棵树的布局也是一样的!发现到这里,就找到了重叠子问题了,其实也就是发现可以通过dp[1] 和 dp[2] 来推导出来dp[3]的某种方式。

2025-01-04 14:45:01 291

原创 力扣--343.整数拆分

给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k >= 2 ),并使这些整数的乘积最大化。返回 你可以获得的最大乘积。示例 1:输入: n = 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。示例 2:输入: n = 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。

2025-01-04 14:29:59 516

原创 力扣--63.不同路径II

给定一个 m x n 的整数数组 grid。一个机器人初始位于 左上角(即 grid[0][0])。机器人尝试移动到 右下角(即 grid[m - 1][n - 1])。机器人每次只能向下或者向右移动一步。网格中的障碍物和空位置分别用 1 和 0 来表示。机器人的移动路径中不能包含 任何 有障碍物的方格。返回机器人能够到达右下角的不同路径数量。测试用例保证答案小于等于 2 * 109。

2025-01-04 14:07:13 170

原创 力扣--62.不同路径

一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?

2025-01-04 11:39:41 647

原创 力扣--746.使用最小花费爬楼梯

给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。示例 1:输入:cost = [10,15,20]输出:15解释:你将从下标为 1 的台阶开始。示例 2:输入:cost = [1,100,1,1,1,100,1,1,100,1]输出:6解释:你将从下标为 0 的台阶开始。

2025-01-04 11:36:49 723

原创 力扣--70.爬楼梯

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?示例 1:输入:n = 2输出:2解释:有两种方法可以爬到楼顶。示例 2:输入:n = 3输出:3解释:有三种方法可以爬到楼顶。

2025-01-04 11:31:47 222

原创 力扣--509.斐波那契数列

斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(n) = F(n - 1) + F(n - 2),其中 n > 1给定 n ,请计算 F(n)。示例 1:输入:n = 2输出:1解释:F(2) = F(1) + F(0) = 1 + 0 = 1示例 2:输入:n = 3输出:2解释:F(3) = F(2) + F(1) = 1 + 1 = 2示例 3:输入:n = 4。

2025-01-04 11:25:32 227

原创 力扣--LCR 185.统计结果概率

你选择掷出 num 个色子,请返回所有点数总和的概率。你需要用一个浮点数数组返回答案,其中第 i 个元素代表这 num 个骰子所能掷出的点数集合中第 i 小的那个的概率。示例 1:输入:num = 3输出:[0.00463,0.01389,0.02778,0.04630,0.06944,0.09722,0.11574,0.12500,0.12500,0.11574,0.09722,0.06944,0.04630,0.02778,0.01389,0.00463]示例 2:输入:num = 5。

2025-01-02 22:07:31 223

原创 力扣--LCR 168.丑数

给你一个整数 n ,请你找出并返回第 n 个 丑数。说明:丑数是只包含质因数 2、3 和/或 5 的正整数;1 是丑数。示例 1:输入: n = 10输出: 12解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。

2025-01-02 14:27:52 361

原创 力扣--LCR 137.模糊搜索验证

请设计一个程序来支持用户在文本编辑器中的模糊搜索功能。请返回用户输入内容 input 所有字符是否可以匹配原文字符串 article。示例 1:输入:article = “aa”, input = “a”输出:false解释:“a” 无法匹配 “aa” 整个字符串。示例 2:输入:article = “aa”, input = “a*”输出:true解释:因为 ‘*’ 代表可以匹配零个或多个前面的那一个元素, 在这里前面的元素就是 ‘a’。

2025-01-02 14:22:02 246

原创 力扣--LCR 167.招式拆解I

某套连招动作记作序列 arr,其中 arr[i] 为第 i 个招式的名字。请返回 arr 中最多可以出连续不重复的多少个招式。示例 1:输入:arr = “dbascDdad”输出:6解释:因为连续且最长的招式序列是 “dbascD” 或 “bascDd”,所以其长度为 6。示例 2:输入:arr = “KKK”输出:1解释:因为无重复字符的最长子串是 “K”,所以其长度为 1。示例 3:输入:arr = “pwwkew”输出:3。

2025-01-02 14:15:18 850

原创 力扣--LCR 166.珠宝的最高价值

现有一个记作二维矩阵 frame 的珠宝架,其中 frame[i][j] 为该位置珠宝的价值。注意:珠宝的价值都是大于 0 的。除非这个架子上没有任何珠宝,比如 frame = [[0]]。示例 1:输入:frame = [[1,3,1],[1,5,1],[4,2,1]]输出:12解释:路径 1→3→5→2→1 可以拿到最高价值的珠宝。

2024-12-30 12:31:10 134

原创 力扣--LCR 188.买卖芯片的最佳时机

数组 prices 记录了某芯片近期的交易价格,其中 prices[i] 表示的 i 天该芯片的价格。你只能选择 某一天 买入芯片,并选择在 未来的某一个不同的日子 卖出该芯片。请设计一个算法计算并返回你从这笔交易中能获取的最大利润。如果你不能获取任何利润,返回 0。示例 1:输入:prices = [3, 6, 2, 9, 8, 5]输出:7解释:在第 3 天(芯片价格 = 2)买入,在第 4 天(芯片价格 = 9)卖出,最大利润 = 9 - 2 = 7。

2024-12-29 21:13:23 246

原创 力扣--LCR 64.最小路径和

给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。

2024-12-20 10:21:56 312

原创 力扣--LCR 53.最大数组和

给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。示例 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。

2024-12-20 10:20:00 400

原创 力扣--LCR 153.二叉树中和为目标值的路径

给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。叶子节点 是指没有子节点的节点。

2024-12-19 12:31:03 380

原创 力扣--LCR 130.衣橱整理

家居整理师将待整理衣橱划分为 m x n 的二维矩阵 grid,其中 grid[i][j] 代表一个需要整理的格子。整理师自 grid[0][0] 开始 逐行逐列 地整理每个格子。整理规则为:在整理过程中,可以选择 向右移动一格 或 向下移动一格,但不能移动到衣柜之外。同时,不需要整理 digit(i) + digit(j) > cnt 的格子,其中 digit(x) 表示数字 x 的各数位之和。请返回整理师 总共需要整理多少个格子。示例 1:输入:m = 4, n = 7, cnt = 5。

2024-12-19 12:21:32 259

原创 力扣--LCR 129.字母迷宫

字母迷宫游戏初始界面记作 m x n 二维字符串数组 grid,请判断玩家是否能在 grid 中找到目标单词 target。注意:寻找单词时 必须 按照字母顺序,通过水平或垂直方向相邻的单元格内的字母构成,同时,同一个单元格内的字母 不允许被重复使用。

2024-12-19 12:05:00 320

原创 力扣--LCR 170.交易逆序对的总数

米在股票交易中,如果前一天的股价高于后一天的股价,则可以认为存在一个「交易逆序对」。请设计一个程序,输入一段时间内的股票交易记录 record,返回其中存在的「交易逆序对」总数。示例 1:输入:record = [9, 7, 5, 4, 6]输出:8解释:交易中的逆序对为 (9, 7), (9, 5), (9, 4), (9, 6), (7, 5), (7, 4), (7, 6), (5, 4)。

2024-12-18 16:30:57 133

原创 力扣--LCR 160.数据流中的中位数

中位数 是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。例如,[2,3,4] 的中位数是 3[2,3] 的中位数是 (2 + 3) / 2 = 2.5示例 1:输入:输出:[null,null,null,1.50000,null,2.00000]示例 2:输入:输出:[null,null,2.00000,null,2.50000]

2024-12-17 17:32:51 318

ADuC845开发板资料

ADuC845开发板资料

2023-04-24

空空如也

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

TA关注的人

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