自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 力扣 55题 跳跃游戏 记录

我们可以使用贪心算法来解决这个问题。目标是在遍历数组时,记录能够到达的最远位置,并在过程中检查是否可以到达或超过最后一个下标。

2024-09-06 11:23:46 306

原创 Ubuntu连接GitHub

打开.ssh文件夹下的id_rsa.pub 复制其内容。首先为系统设置github的用户名和自己的邮箱。生成ssh key,邮箱填刚才设置的邮箱。打开GIthub中的设置,按步骤添加即可。一直回车默认选项即可。

2024-08-16 16:23:04 405

原创 力扣 216题 组合之和Ⅲ 记录

基本思路:使用递归构建数字的组合路径,当满足条件(组合大小为 k 且和为 n)时,记录当前路径并回溯以尝试其他可能的路径。解释:当当前路径的和已经超过 n 时,不可能再通过加入更多数字使和等于 n,因此立即返回避免不必要的递归。解释:通过使用一个变量来跟踪当前路径的累加和,避免每次递归调用时重新计算路径和,从而减少计算时间。取消了求和函数,在递归过程中使用一个变量来维护当前路径的和,避免在每次递归时重新计算和。实现方式:在每次递归调用时,计算当前和并检查,如果超过 n 则直接返回。

2024-08-04 11:19:50 724

原创 力扣 77题 组合 记录

初始调用:backtrack(result, combination, 4, 2, 1)

2024-08-03 11:59:44 466

原创 力扣 222题 完全二叉树的节点个数 记录

【代码】力扣 222题 完全二叉树的节点个数 记录。

2024-07-29 17:41:16 314

原创 力扣 101题 对称二叉树 记录

【代码】力扣 101题 对称二叉树 记录。

2024-07-28 11:48:57 238

原创 力扣 226题 翻转二叉树 记录

1、invertTree(TreeNode* root): 用于翻转二叉树的成员函数。2、printInOrder:中序遍历输出节点值。

2024-07-28 10:06:26 319

原创 Ubuntu与Windows开机默认选项操作 记录

ctrl alt T打开终端,输入。先进入Ubuntu系统。将 0 改成 2 即可。

2024-07-25 13:57:20 251

原创 力扣 104题 二叉树的最大深度 记录

层次遍历,记录遍历的层数即可。

2024-07-25 13:50:08 175

原创 力扣 111题 二叉树的最小深度 记录

为了找出一个二叉树的最小深度,可以通过层序遍历(广度优先搜索)方法来实现。在层序遍历中,我们可以在达到第一个叶子节点时立即返回其深度,这样可以保证找到的是最小深度。这种方法比深度优先搜索(DFS)更为高效,因为它不需要遍历整个树就能找到答案。

2024-07-25 13:47:10 250

原创 力扣 515题 在每个树中找最大值记录

【代码】力扣 515题 在每个树中找最大值记录。

2024-07-23 12:47:23 317

原创 力扣 429题 N叉树的层序遍历 记录

示例1:示例2:层次遍历,不同之处在于如何将当前节点的所有子节点加入队列,以往的二叉树只需判断左右子树是否为空,N叉树同理,判断所有子节点是否为空即可。

2024-07-22 21:40:21 643

原创 力扣 637题 二叉树的层平均值 记录

使用层次遍历,计算每一层节点值的总和,最后再除每层的节点数,将结果放在 result 数组中。

2024-07-22 20:05:15 220

原创 力扣 199题 二叉树的右视图 记录

层次遍历,当遍历到每一层的最后的一个节点的时候,将该节点的值放入 result 数组中。

2024-07-22 17:30:08 201

原创 力扣 102题 二叉树的层次遍历 记录

队列是一种先进先出(FIFO)的数据结构,非常适合于层序遍历,因为我们总是希望按照从树的上层到下层的顺序处理节点。队列操作:使用一个队列来管理待处理的树节点。队列的先进先出特性保证了树的每一层都按照从左到右的顺序被处理。

2024-07-22 16:27:42 667

原创 力扣 144题 二叉树的前序遍历 记录

【代码】力扣 144题 二叉树的前序遍历 记录。

2024-07-15 21:48:31 235

原创 力扣 150题 逆波兰表达式求值 记录

ps:在做加减乘除的时候,是num2 和 num1做加减乘除而不是num1 和 num2,因为在逆波兰表示法(后缀表达式)中,操作数的顺序与它们在表达式中的出现顺序一致。所以,当从栈中弹出两个元素来应用一个操作符时,先弹出的是右操作数,而后弹出的(最近压入的)是左操作数。这种方法的时间复杂度为 O(n),其中 n 是 tokens 数组的长度,因为每个元素只被处理一次。空间复杂度主要是用于存储操作数的栈的空间,最坏情况下也是 O(n)。返回栈顶元素:遍历完成后,栈顶元素就是表达式的结果。

2024-07-12 22:00:22 274

原创 力扣 1047题 删除字符串中的所有相邻重复项 记录

使用一个循环从栈中弹出所有字符并构建结果字符串,然后使用 std::reverse 函数将字符串反转为正确的顺序。完成遍历后,栈中剩余的字符序列即为去除相邻重复后的结果,但顺序是逆的。栈的后入先出(LIFO)特性非常适合处理与顺序相关的对称和回溯问题。返回值:处理后的字符串,其中所有相邻的重复字符都被删除。遍历字符串中的每个字符。时间复杂度: O(n)空间复杂度: O(n)

2024-07-07 21:35:57 473

原创 力扣 225题 用队列实现栈 记录

为了达到这个目的,首先将队列前面的元素(除最后一个元素外)依次出队并重新入队到队列尾部。这样,原本的最后一个元素(栈顶元素)就移到了队列的前端,可以通过 que.pop() 直接移除并返回。在这个实现中,通过对队列的操作,模拟了栈的行为。由于队列的 back() 方法可以直接访问队尾元素,这里的队尾元素正是最后入栈的元素,因此可以直接返回。在栈的行为中,这将是最后一个被弹出的元素,符合后入先出的特性。MyStack 类中定义了一个公有成员 que,类型为 std::queue,用于存储栈中的元素。

2024-07-07 17:43:32 472

原创 力扣 232题 用栈实现队列 记录

队列是一种先入先出(FIFO)的数据结构,但栈是后入先出(LIFO)的数据结构。这里的目标是使用栈的属性来实现一个队列的操作。这样,stIn 的底部元素(即最早加入的元素)会转移到 stOut 的顶部,从而符合队列的出队顺序。由于栈是 LIFO 的,所以新加入的元素总是位于 stIn 的顶部。步骤2:从 stOut 弹出并返回栈顶元素,这个元素是当前队列的队首元素。步骤2:将获取到的元素再次压回 stOut 栈,以保持队列状态不变。功能:返回队列的队首元素,但不移除它。功能:将一个元素 x 加入队列。

2024-07-07 16:42:20 286

原创 解决vscode配置C++编译带有中文名称报错问题

在新电脑上安装vscode运行带有中文路径和中文名称的C++代码时遇到报错。网上教程都试过了,还是不行,后面看了下旧电脑上的扩展,发现有个。的扩展没有安装,试了下安装后居然可以运行了!,但还是报相同的错误。

2024-07-06 22:03:05 537

原创 Ubuntu开通5005端口 记录

报错的原因是没有安装firewall,安装命令为。Ubuntu版本:20.04。查看防火墙状态,报错。然后开通5005端口。

2024-07-02 21:00:55 506

原创 解决双击bootstrap.bat没有生成b2.exe文件

第一个Include环境变量,实际上它可能不存在,所以需要自己创建一个,新建的第一个在最后一定要加分号!(并不是把它加到Path这个变量下面!而这个Boost,通常需要安装带有 C++ 工作负载的 Visual Studio。点击控制面板——系统与安全——系统,会弹到设置里去。,名字为INCLUDE,加入以下四个路径。再次双击bootstrap.bat。下载完成后,开始配置环境变量,结束后将会生成b2.exe文件。在系统变量的Path下,加入。配置环境变量,选择path。新增环境变量为以下步骤。

2024-06-21 21:46:47 832

原创 VSCode配置mingw64 记录

点击调试(倒三角形状),会弹出没有laugh.json,然后配置。如果运行程序终端窗口闪退,就下载以下插件,并点击扩展设置。下滑,下载x86_64-posix-seh。创建一个test.cpp文件。配置tasks.json文件。,建议科学上网速度会更快。官网自行下载VSCode。再次运行终端就可以弹出了。

2024-06-20 21:57:38 154

原创 力扣 右旋字符串 记录

采用倒叙的方法,首先将字符串进行倒叙成gfedcba,然后将前n个字符串和后s.zize() - n个字符串再次进行倒叙得到fgabcde。

2024-06-14 20:16:04 145

原创 基于YOLOv5的钢材表面缺陷检测

意思就是,当我设置置信度为某一数值的时候,各个类别识别的准确率。可以看到,当置信度越大的时候,类别检测的越准确。这也很好理解,只有confidence很大,才被判断是某一类别。但也很好想到,这样的话,会漏检一些置信度低的类别。但我们希望我们的网络,在准确率很高的前提下,尽可能的检测到全部的类别。所以希望我们的曲线接近(1,1)点,即希望mAP曲线的面积尽可能接近1。mAP 是 Mean Average Precision 的缩写,即 均值平均精度。3、下载权重模型,我选择的是。第七类inclusion类。

2024-06-14 10:56:33 590

原创 力扣 541题 反转字符串Ⅱ 记录

【代码】力扣 541题 反转字符串Ⅱ 记录。

2024-06-03 16:36:48 314

原创 力扣 344题 反转字符串 记录

【代码】力扣 344题 反转字符串 记录。

2024-06-03 16:00:33 197

原创 力扣 383题 赎金信 记录

【代码】力扣 383题 赎金信 记录。

2024-06-03 15:08:55 339

原创 力扣 454题 四数相加Ⅱ 记录

【代码】力扣 454题 四数相加Ⅱ 记录。

2024-06-02 22:43:33 466

原创 力扣 1题 两数之和(哈希) 记录

【代码】力扣 1题 两数之和(哈希) 记录。

2024-06-01 22:06:35 518

原创 力扣 202题 快乐数 记录

【代码】力扣 202题 快乐数 记录。

2024-05-31 14:05:42 197

原创 力扣 349题 两个数组的交集 记录

时间复杂度:主要时间花费在遍历 nums2 并在 nums_set 中进行查找操作,平均情况下,unordered_set 的查找操作是常数时间的。因此,时间复杂度大约是 O(n + m),其中 n 是 nums1 的长度,m 是 nums2 的长度。空间复杂度:使用了两个额外的 unordered_set,空间复杂度也是 O(n + m)。

2024-05-31 11:04:16 216

原创 力扣 242题 有效的字母异位 记录

【代码】力扣 242题 有效的字母异位 记录。

2024-05-31 10:03:29 344

原创 力扣 142题 环形链表Ⅱ 记录

如果链表中存在环,快指针最终会追上慢指针。当两个指针相遇时,将一个指针重置到链表的头部,然后两个指针都以相同的速度移动,直到它们再次相遇,这次相遇的节点就是环的起点。当 fast 和 slow 指针在链表中前进时,如果链表存在环,由于 fast 指针的速度是 slow 指针的两倍,fast 会在某个时刻追上 slow(在环内相遇)。当 fast 和 slow 相遇时,将其中一个指针(例如 fast)放回链表的起始位置 head,然后 fast 和 slow 同时以相同的速度(每步一节点)前进;

2024-05-30 21:03:14 526

原创 力扣 19题 删除链表的倒数第 N 个结点 记录

使用双指针方法,遍历一词链表就可以完成任务。

2024-05-30 16:16:33 353

原创 mathtype与word关联

“选项”选择“加载项”划到最下方,选择“模板”,点击“转到”点击确定word关闭再重新打开即可使用

2024-04-16 11:08:12 233

原创 力扣 122题 买卖股票的最佳时机 II 记录

对于这个问题,贪心算法的思路是:遍历价格数组,每次只要后一天的价格比前一天高,就在前一天买入,后一天卖出,这样可以保证获得所有可能的正利润。贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。我们可以将整个价格序列看作是由若干上升子序列组成的,而每一次“低买高卖”就是在获取这个上升子序列的利润。通过累加这些子序列的利润,就能得到最大总利润。具体实现时,可以遍历一次价格数组,只要发现今天的价格比昨天高,就将差价加到总利润中。

2024-03-21 15:28:36 371 1

原创 力扣 376题 摆动序列 记录

遍历数组,计算当前差值,并根据当前差值和前一个差值的正负关系判断是否构成了摆动序列。局部最优:删除单调坡度上的节点(不包括单调坡度两端的节点):表示最终结果,初始化为1,因为默认最右端是一个峰值。的值仍是初始值0,因为一直没有满足条件的峰值,且此时。> 0,说明出现了正负交替,摆动序列长度加1。语句里面则不会出现这个错误,此时在循环到。语句外会出现问题,加入数组为。局部最优 ——> 全局最优。的值为-1,满足条件,

2024-03-18 16:51:33 352

原创 力扣 58题 最大子数组和 记录

②第 i 个元素和前面的某个元素结合,形成一个新的子数组。如果 dp[i-1] 大于 0,则将 nums[i] 加上 dp[i-1]。1、定义状态:我们可以定义一个一维数组 dp,其中 dp[i] 表示以第 i 个元素结尾的连续子数组的最大和。3、初始状态:dp[0] = nums[0],即以第一个元素结尾的连续子数组的最大和就是第一个元素本身。所以,状态转移方程为:dp[i] = max(nums[i], nums[i] + dp[i-1])。① 第 i 个元素自成一个子数组,即 nums[i];

2024-03-18 16:03:23 444

空空如也

空空如也

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

TA关注的人

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