自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 问答 (1)
  • 收藏
  • 关注

原创 283. 移动零

移动到数组的末尾,同时保持非零元素的相对顺序。,必须在不复制数组的情况下原地对数组进行操作。,编写一个函数将所有。

2024-07-05 00:24:34 286

原创 128. 最长连续序列

找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。最长数字连续序列是 [1, 2, 3, 4]。请你设计并实现时间复杂度为。给定一个未排序的整数数组。

2024-07-03 16:23:19 307

原创 49. 字母异位词分组

是由重新排列源单词的所有字母得到的一个新单词。可以按任意顺序返回结果列表。给你一个字符串数组,请你将。

2024-07-03 02:55:24 413

原创 1两数之和

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。整数,并返回它们的数组下标。你可以按任意顺序返回答案。,请你在该数组中找出。你可以想出一个时间复。

2024-07-01 22:48:46 216 1

原创 蓝桥杯2023年第十四届省赛真题-冶炼金属

对于min,可以用O/(X+1)=t······n;当 V = 20 时,有:⌊75/20⌋ = 3,⌊ 53/20 ⌋ = 2,⌊ 59/20 ⌋ = 2,可以看到符合所有冶炼记录。当 V = 25 时,有:⌊75/25⌋ = 3,⌊ 53/25 ⌋ = 2,⌊ 59/25 ⌋ = 2,可以看到符合所有冶炼记录。我们要得到转换率V的一个min值,一个max值,使得O/max=X······n;(设n为某个自然数)那么O/X=max······n,max值可以直接得到。

2024-03-13 11:28:09 420 1

原创 图书管理系统(单链表实现)

【代码】图书管理系统(单链表实现)

2023-12-23 02:25:30 491

原创 435. 无重叠区间

要想保留的区间最多,就先要排序(使合理的方案中的区间最紧凑,越紧凑保留的区间就越多),然后找出排完序不重合的(找出一个合理的方案)你需要移除两个 [1,2] 来使剩下的区间没有重叠。你不需要移除任何区间,因为它们已经是无重叠的了。需要移除区间的最小数量,使剩余区间互不重叠。移除 [1,3] 后,剩下的区间没有重叠。去掉的区间最少=保留的区间最多。

2023-11-06 16:27:59 154

原创 C++线程库的基本使用(初级)

【代码】C++线程库的基本使用。

2023-11-05 16:31:15 399

原创 452. 用最少数量的箭引爆气球

有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组。-在x = 11处发射箭,击破气球[10,16]和[7,12]。- 在x = 2处发射箭,击破气球[1,2]和[2,3]。- 在x = 4处射出箭,击破气球[3,4]和[4,5]。-在x = 6处射出箭,击破气球[2,8]和[1,6]。处射出一支箭,若有一个气球的直径的开始和结束坐标为。你不知道气球的确切 y 坐标。弓箭一旦被射出之后,可以无限地前进。每个气球需要射出一支箭,总共需要4支箭。可以射出的弓箭的数量。

2023-11-02 12:28:26 122

原创 45. 跳跃游戏 II

从下标为 0 跳到下标为 1 的位置,跳。向前跳转的最大长度。生成的测试用例可以到达。跳到最后一个位置的最小跳跃数是。步到达数组的最后一个位置。处,你可以跳转到任意。

2023-10-31 14:27:01 94

原创 55. 跳跃游戏

无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回。给你一个非负整数数组。

2023-10-30 14:19:17 107

原创 406. 根据身高重建队列

编号为 4 的人身高为 4 ,有 4 个身高更高或者相同的人排在他前面,即编号为 0、1、2、3 的人。因此 [[5,0],[7,0],[5,2],[6,1],[4,4],[7,1]] 是重新构造后的队列。编号为 2 的人身高为 5 ,有 2 个身高更高或者相同的人排在他前面,即编号为 0 和 1 的人。编号为 3 的人身高为 6 ,有 1 个身高更高或者相同的人排在他前面,即编号为 1 的人。编号为 5 的人身高为 7 ,有 1 个身高更高或者相同的人排在他前面,即编号为 1 的人。

2023-10-27 14:54:29 70

原创 135. 分发糖果

如果ratings[i]>ratings[i+1]时,canNum[i]必须大于canNum[i+1],所以canNum[i]至少要是canNum[i+1]+1,但是canNum[i+1]+1,如果还不如。那canNum[i+1]+1较大时,则会不会canNum[i+1]+1破坏上一次遍历的结果呢。上一次遍历得来的canNum[i]大,那么则保持原有的canNum[i]你可以分别给第一个、第二个、第三个孩子分发 2、1、2 颗糖果。你可以分别给第一个、第二个、第三个孩子分发 1、2、1 颗糖果。

2023-10-25 11:48:25 89

原创 122. 买卖股票的最佳时机 II

随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6 - 3 = 3。在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5 - 1 = 4。在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5 - 1 = 4。在这种情况下, 交易无法获得正利润,所以不参与交易可以获得最大利润,最大利润为 0。

2023-10-24 14:46:54 51

原创 738. 单调递增的数字

当且仅当每个相邻位数上的数字。的最大数字,且数字呈。时,我们称这个整数是。

2023-10-23 14:51:05 60

原创 860. 柠檬水找零

对于最后一位顾客,我们无法退回 15 美元,因为我们现在只有两张 10 美元的钞票。对于接下来的 2 位顾客,我们收取一张 10 美元的钞票,然后返还 5 美元。第 5 位顾客那里,我们找还一张 10 美元的钞票和一张 5 美元的钞票。第 4 位顾客那里,我们收取一张 10 美元的钞票,并返还 5 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付。前 3 位顾客那里,我们按顺序收取 3 张 5 美元的钞票。前 2 位顾客那里,我们按顺序收取 2 张 5 美元的钞票。

2023-10-21 00:33:57 215 1

原创 1005. K 次取反后最大化的数组和

选择下标 (1, 2, 2) ,nums 变为 [3,1,0,2]。选择下标 (1, 4) ,nums 变为 [2,3,-1,5,4]。选择下标 1 ,nums 变为 [4,-2,3]。以这种方式修改数组后,返回数组。可以多次选择同一个下标。

2023-10-19 17:28:25 85

原创 455. 分发饼干

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。虽然你有两块小饼干,由于他们的尺寸都是1,你只能让胃口值是1的孩子满足。你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。,这是能让孩子们满足胃口的饼干的最小尺寸;你有两个孩子和三块小饼干,2个孩子的胃口值分别是1,2。你拥有的饼干数量和尺寸都足以让所有孩子满足。,我们可以将这个饼干。

2023-10-13 23:53:08 276

原创 学生管理系统

【代码】学生管理系统。

2023-10-13 18:24:40 61

原创 线性表基本操作

【代码】线性表基本操作。

2023-10-13 13:49:26 37

原创 51. N 皇后

按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。的棋盘上,并且使皇后彼此之间不能相互攻击。如上图所示,4 皇后问题存在两个不同的解法。的棋子放置方案,该方案中。每一种解法包含一个不同的。分别代表了皇后和空位。

2023-10-10 15:58:20 58

原创 90. 子集 II

其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。返回的解集中,子集可以按。

2023-10-07 15:53:25 66

原创 78. 子集

返回该数组所有可能的子集(幂集)。

2023-10-06 17:35:25 83

原创 39. 组合总和

2 和 3 可以形成一组候选,2 + 2 + 3 = 7。注意 2 可以使用多次。如果至少一个数字的被选数量不同,则两种组合是不同的。7 也是一个候选, 7 = 7。,并以列表形式返回。中可以使数字和为目标数。对于给定的输入,保证和为。

2023-10-06 14:52:51 108

原创 93. 复原 IP 地址

用以表示一个 IP 地址,返回所有可能的。正好由四个整数(每个整数位于。之间组成,且不能含有前导。给定一个只包含数字的字符串。,这些地址可以通过在。

2023-10-04 17:18:54 454

原创 40. 组合总和 II

中的每个数字在每个组合中只能使用。给定一个候选人编号的集合。解集不能包含重复的组合。中所有可以使数字和为。

2023-10-01 23:48:02 199

原创 17. 电话号码的字母组合

给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。的字符串,返回所有它能表示的字母组合。

2023-09-28 22:32:55 250

原创 216. 组合总和 III

在[1,9]范围内使用4个不同的数字,我们可以得到的最小和是1+2+3+4 = 10,因为10 > 1,没有有效的组合。该列表不能包含相同的组合两次,组合可以以任何顺序返回。所有可能的有效组合的列表。没有其他符合的组合了。没有其他符合的组合了。

2023-09-27 15:48:34 173

原创 77. 组合

【代码】77. 组合。

2023-09-26 17:11:35 103

原创 1038. 从二叉搜索树到更大和树

(BST),请将它的每个节点的值替换成树中大于或者等于该节点值的所有节点值之和。

2023-09-24 19:53:16 108

原创 108. 将有序数组转换为二叉搜索树

二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。[1,null,3] 和 [3,1] 都是高度平衡二叉搜索树。排列,请你将其转换为一棵。

2023-09-23 16:16:09 168

原创 669. 修剪二叉搜索树

改变保留在树中的元素的相对结构 (即,如果没有被移除,原有的父代子代关系都应当保留)。所以结果应当返回修剪好的二叉搜索树的新的根节点。注意,根节点可能会根据给定的边界发生改变。通过修剪二叉搜索树,使得所有节点的值在。给你二叉搜索树的根节点。

2023-09-19 20:58:39 71

原创 701. 二叉搜索树中的插入操作

可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。,将值插入二叉搜索树。返回插入后二叉搜索树的根节点。,新值和原始二叉搜索树中的任意节点值都不同。给定二叉搜索树(BST)的根节点。

2023-09-18 20:42:07 97

原创 235. 二叉搜索树的最近公共祖先

中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,null,3,5]给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。, 因为根据定义最近公共祖先节点可以为节点本身。

2023-09-17 19:20:37 100

原创 236. 二叉树的最近公共祖先

中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。因为根据定义最近公共祖先节点可以为节点本身。的最近公共祖先是节点。的最近公共祖先是节点。

2023-09-16 17:14:37 64

原创 501. 二叉搜索树中的众数

给你一个含重复值的二叉搜索树(BST)的根节点。,找出并返回 BST 中的所有。如果树中有不止一个众数,可以按。(即,出现频率最高的元素)。

2023-09-10 16:18:41 100

原创 C++文件操作

推荐使用第三种方式,代码量少,好记。

2023-09-10 15:09:19 605

原创 530. 二叉搜索树的最小绝对差

差值是一个正数,其数值等于两值之差的绝对值。给你一个二叉搜索树的根节点。

2023-09-09 19:36:14 105

原创 98. 验证二叉搜索树

中序遍历是左中右的顺序,刚刚好搜索二叉树的特点是左<中<右。根节点的值是 5 ,但是右子节点的值是 4。,判断其是否是一个有效的二叉搜索树。给你一个二叉树的根节点。

2023-09-07 20:29:08 377

原创 C++ 多态

多态是面向对象编程中的一个概念,指同一个方法或操作可以被不同的对象调用,产生不同的结果。也可以理解为同一个接口,不同的实现方式。在多态的概念中,通过继承,子类可以重写父类的方法,从而实现多态。例如,一个父类有一个某方法,子类可以继承该父类,并重写该方法,从而实现不同的行为。多态的好处在于,可以增强代码的灵活性和可扩展性,让代码更加面向对象。

2023-09-05 21:42:48 758

基于多态的职工管理系统

基于多态的职工管理系统

2023-09-17

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

TA关注的人

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