自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [LeetCode][LCR131]砍竹子 I——推测规律

现需要将一根长为正整数 bamboo_len 的竹子砍为若干段,每段长度均为正整数。请返回每段竹子长度的最大乘积是多少。输入:输出:81。

2024-04-08 19:50:38 339

原创 [LeetCode][LCR164]破解闯关密码——重定义排序规则+贪心

/ 自定义排序规则,这里以升序排序为例// 示例容器// 使用比较函数进行排序// 输出已排序的结果return 0;捕获列表(capture list)指定了 lambda 表达式中可以访问的外部变量的方式。捕获列表位于 lambda 表达式的起始位置,用方括号包围。[]:不捕获任何外部变量。lambda 表达式只能使用其参数和在其作用域内可见的变量。[x, &y]:按值和按引用捕获变量。通过在方括号中指定变量名,可以选择按值或按引用进行捕获。在方括号中使用逗号分隔不同的捕获方式。

2024-04-08 18:15:28 752

原创 [LeetCode][LCR186]文物朝代判断——贪心

展览馆展出来自 13 个朝代的文物,每排展柜展出 5 个文物。某排文物的摆放情况记录于数组 places,其中 places[i] 表示处于第 i 位文物的所属朝代编号。其中,编号为 0 的朝代表示未知朝代。请判断并返回这排文物的所属朝代编号是否连续(如遇未知朝代可算作连续情况)。TrueTrue。

2024-04-07 23:55:59 389

原创 [LeetCode][LCR178]训练计划 VI——使用位运算寻找数组中不同的数字

教学过程中,教练示范一次,学员跟做三次。该过程被混乱剪辑后,记录于数组actions,其中actions[i]表示做出该动作的人员编号。请返回教练的编号。71。

2024-04-07 20:58:02 869

原创 【踩坑日记】因不同系统换行符不同导致的文本读取结果不同的问题

将被解释为回车符,也就是光标回到当前这个 printf 输出的内容的开始,如果后面继续输出,将会覆盖当前这个 printf 输出的内容。此时,注意到其用的是 WSL 的 Ubuntu 环境,于是我尝试在我的 WSL 的 Ubuntu 环境下运行,结果问题真的复现了!确实很奇怪,按理说第二个printf不会完全不输出,于是想到,会不会是printf缓冲器的锅,让群友尝试刷新缓冲区,无果。这就很奇怪了,我的环境运行正常,而群友运行就不正常,开始怀疑是不是其环境的问题。也会解释为回车换行,但是如果。

2024-04-06 21:02:21 634

原创 [LeetCode][LCR177]撞色搭配——异或消去出现偶数次的相同数字

整数数组sockets记录了一个袜子礼盒的颜色分布情况,其中sockets[i]表示该袜子的颜色编号。礼盒中除了一款撞色搭配的袜子,每种颜色的袜子均有两只。请设计一个程序,在时间复杂度 O(n),空间复杂度O(1) 内找到这双撞色搭配袜子的两个颜色编号。示例 1:[2,5]或[5,2]示例 2:[2,12]或[12,2]

2024-04-06 17:34:45 431

原创 [LeetCode][LCR190]加密运算——全加器的实现

计算机安全专家正在开发一款高度安全的加密通信软件,需要在进行数据传输时对数据进行加密和解密操作。请不使用四则运算符的情况下实现一个函数计算两次通信的数据量之和(三种情况均需被统计),以确保在数据传输过程中的高安全性和保密性。

2024-04-05 16:38:06 339

原创 [LeetCode][LCR133]位 1 的个数——快速从右边消去1

编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量).)。提示:请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。在 Java 中,编译器使用 二进制补码 记法来表示有符号整数。因此,在上面的 示例 3 中,输入表示有符号整数 -3。n = 11(控制台输入3。

2024-04-05 16:10:07 474

原创 八数码问题——A*算法的应用(A-Star)

A* 算法的核心思想是综合考虑两个方面的信息:从起始节点到当前节点的实际代价(通常是已经走过的路径的代价),以及从当前节点到目标节点的估计代价(启发式函数)。这两方面的信息通过综合起来选择估计代价最小的节点进行搜索,朝着目标节点前进。

2024-04-03 19:53:43 1887

原创 [LeetCode][LCR158]库存管理 II——摩尔投票法

仓库管理员以数组 stock 形式记录商品库存表。stock[i] 表示商品 id,可能存在重复。请返回库存表中数量大于 stock.length / 2 的商品 id。输入:输出:1限制:给定数组为非空数组,且存在结果数字。

2024-04-01 18:12:55 254

原创 [LeetCode][LCR 179]查找总价格为目标值的两个商品

购物车内的商品价格按照升序记录于数组 price。请在购物车中找到两个商品的价格总和刚好是 target。若存在多种情况,返回任一结果即可。[3,15]或者[15,3][27,34]或者[34,27]

2024-03-29 22:39:26 308

原创 [LeetCode][233]数字 1 的个数

给定一个整数 n,计算所有小于等于 n 的非负整数中数字 1 出现的个数。

2024-03-29 19:02:56 356

原创 [LeetCode][400]第 N 位数字

给你一个整数 n ,请你在无限的整数序列 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …] 中找出并返回第 n 位上的数字。n = 33n = 110解释:第 11 位数字在序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, … 里是 0 ,它是 10 的一部分。

2024-03-29 17:38:04 219

原创 [LeetCode][LCR187]破冰游戏——约瑟夫环

社团共有 num 位成员参与破冰游戏,编号为 0 ~ num-1。成员们按照编号顺序围绕圆桌而坐。社长抽取一个数字 target,从 0 号成员起开始计数,排在第 target 位的成员离开圆桌,且成员离开后从下一个成员开始计数。请返回游戏结束时最后一位成员的编号。10。

2024-03-28 23:56:27 548

原创 [LeetCode][LCR170]交易逆序对的总数

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

2024-03-19 23:59:46 454

原创 [LeetBook]【学习日记】排序算法——归并排序

1. 归并排序是一种分治算法,其排序过程包括分和治2. 分是指将要排序的序列一分为二、二分为四,直到单个序列中只有一个数3. 治是指在分完后,将每两个元素重新组合,四合为二、二合为一,最终完成排序

2024-03-19 20:34:58 567

原创 [LeetCode][LCR121]寻找目标值 - 二维数组(一道解法惊为天人的题)

请判断 plants 中是否存在目标高度值 target。

2024-03-16 23:22:59 402

原创 [LeetCode][LCR173]点名——二分结合输入数据特点找边界

某班级 n 位同学的学号为 0 ~ n-1。点名结果记录于升序数组 records。假定仅有一位同学缺席,请返回他的学号。47。

2024-03-16 23:05:34 469

原创 [LeetCode][LCR172]统计目标成绩的出现次数——二分找边界

某班级考试成绩按非严格递增顺序记录于整数数组scores,请返回目标成绩target的出现次数。30。

2024-03-13 21:09:48 465

原创 [LeetCode][LCR169]招式拆解 II——巧妙利用字母的固定顺序实现查找复杂度为O(1)的哈希表

某套连招动作记作仅由小写字母组成的序列 arr,其中 arr[i] 第 i 个招式的名字。请返回第一个只出现一次的招式名称,如不存在请返回空格。a' '

2024-03-13 16:10:02 436

原创 [LeetCode][LCR156]序列化与反序列化二叉树

序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。请设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。

2024-03-13 14:47:08 705

原创 [LeetCode][LCR 194]二叉树的最近公共祖先

给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。输入:输出:3解释: 节点 5 和节点 1 的最近公共祖先是节点 3。输入:输出:5解释: 节点 5 和节点 4 的最近公共祖先是节点 5。因为根据定义最近公共祖先节点可以为节点本身。

2024-03-13 13:53:07 351

原创 [LeetCode][LCR 193]二叉搜索树的最近公共祖先

给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。输入:输出:6解释: 节点 2 和节点 8 的最近公共祖先是 6。输入:输出:2解释: 节点 2 和节点 4 的最近公共祖先是 2, 因为根据定义最近公共祖先节点可以为节点本身。

2024-03-13 12:30:56 168

原创 [LeetCode][110]平衡二叉树

给定一个二叉树,判断它是否是平衡二叉树。

2024-03-13 12:21:39 583

原创 [LeetCode][LCR 175]计算二叉树的深度

某公司架构以二叉树形式记录,请返回该公司的层级数。4解释:上面示例中的二叉树的最大深度是 4,沿着路径 1 -> 2 -> 3 -> 4 或 1 -> 2 -> 5 -> 4到达叶节点的最长路径上有 4 个节点。

2024-03-13 12:06:20 323

原创 二分查找的梳理——边界初始值、循环条件、边界更新

同理,比中值大需要更新左边界,为了使确定不是二分区间内的 middle 不包含在下一次要进行二分的区间,故。同理,比中值大需要更新左边界,为了使确定不是二分区间内的 middle 不包含在下一次要进行二分的区间,故。这里的区间指的是在什么区间上进行二分。比中值大直接输出即可。比中值大直接输出即可。

2024-03-13 01:38:56 837

原创 [LeetCode][LCR174] 寻找二叉搜索树中的目标节点

某公司组织架构以二叉搜索树形式记录,节点值为处于该职位的员工编号。请返回第 cnt 大的员工编号。提示:1 ≤ cnt ≤ 二叉搜索树元素个数。

2024-03-12 23:22:02 320

原创 [LeetCode][426]【学习日记】将二叉搜索树转化为排序的双向链表——前驱节点pre 和 当前节点cur 的使用

将一个 二叉搜索树 就地转化为一个 已排序的双向循环链表。对于双向循环列表,你可以将左右孩子指针作为双向循环链表的前驱和后继指针,第一个节点的前驱是最后一个节点,最后一个节点的后继是第一个节点。特别地,我们希望可以就地完成转换操作。当转化完成以后,树中节点的左指针需要指向前驱,树中节点的右指针需要指向后继。还需要返回链表中最小元素的指针。[1,2,3]root = [][]解释:输入是空树,所以输出也是空链表。

2024-03-12 00:04:00 568

原创 [LeetCode][101]对称二叉树

给你一个二叉树的根节点 root , 检查它是否轴对称。示例 1:输入:root = [1,2,2,3,4,4,3] 输出:true示例 2:输入:root = [1,2,2,null,3,null,3] 输出:false提示:树中节点数目在范围 [1, 1000] 内。

2024-03-10 23:28:46 298

原创 [LeetCode][226]翻转二叉树

给你一棵二叉树的根节点root,翻转这棵二叉树,并返回其根节点。提示:树中节点数目范围在 [0, 100] 内。

2024-03-10 13:26:51 346

原创 [LeetCode][LCR151]彩灯装饰记录 III——队列

一棵圣诞树记作根节点为root的二叉树,节点值为该位置装饰彩灯的颜色编号。提示:节点总数

2024-03-10 01:53:09 444

原创 [LeetCode][LCR143]树的子结构判断——递归

给定两棵二叉树tree1和tree2,判断tree2是否以tree1的某个节点为根的子树具有相同的结构和节点值。注意,空树不会是以tree1的某个节点为根的子树具有相同的结构和节点值。提示:0

2024-03-10 01:40:51 461

原创 [LeetCode][102]二叉树的层序遍历——遍历结果中每一层明显区分

给定二叉树的根节点root,返回节点值的层序遍历结果。即逐层地,从左到右访问所有节点。示例 1:输入:root = [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]]示例 2:输入:root = [1] 输出:[[1]]示例 3:输入:root = [] 输出:[]提示:树中节点数目在范围 [0, 2000] 内。

2024-03-09 12:05:32 433

原创 [LeetCode][LCR149]彩灯装饰记录 I——二叉树的层序遍历

给定一棵圣诞树,记作根节点为root的二叉树,节点值为该位置装饰彩灯的颜色编号。按照从左到右的顺序返回每一层彩灯编号。示例 1:输入:root = [8,17,21,18,null,null,6] 输出:[8,17,21,18,6]提示: 节点总数

2024-03-09 11:39:58 216

原创 [LeetCode][295]数据流的中位数——巧妙利用大顶堆和小顶堆排序

中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。例如 arr = [2,3,4] 的中位数是 3。例如 arr = [2,3] 的中位数是 (2 + 3) / 2 = 2.5。提示:-105

2024-03-08 23:15:42 766

原创 [LeetCode][LCR184]设计自助结算系统——单调队列

get_max()add(value)valueremove()注意,为保证该系统运转高效性,以上函数的均摊时间复杂度均为 O(1)

2024-03-08 00:22:01 191

原创 [LeetCode][239]【学习日记】滑动窗口最大值——O(n)单调队列

给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3 输出:[3,3,5,5,6,7] 解释: 滑动窗口的位置最大值示例 2:输入:nums = [1], k = 1 输出:[1]

2024-03-07 22:30:37 882

原创 [LeetCode][946]【学习日记】验证栈序列——模拟栈行为

给定pushed和popped两个序列,每个序列中的值都不重复,只有当它们可能是在最初空栈上进行的推入push和弹出pop操作序列的结果时,返回true;否则,返回false。示例 1:输入:true示例 2:输入:false解释:1 不能在 2 之前弹出。

2024-03-07 19:42:51 470

原创 [LeetCode][155]【学习日记】最小栈——记录每个时刻的最小值

请你设计一个。它提供pushpoptop操作,并能在常数时间内检索到最小元素的栈。实现MinStackMinStack()void pop()int top()-231

2024-03-07 00:50:12 433

原创 [LeetBook]【学习日记】图书整理 II——用两个栈实现队列

读者来到图书馆排队借还书,图书管理员使用两个书车来完成整理借还书的任务。书车中的书从下往上叠加存放,图书管理员每次只能拿取书车顶部的书。为了保持图书的顺序,图书管理员每次取出供读者借阅的书籍是最早归还到图书馆的书籍。你需要返回每次读者借出书的值。如果没有归还的书可以取出,返回 -1。示例 1:输入: [“BookQueue”, “push”, “push”, “pop”] [[], [1], [2], []]

2024-03-06 22:11:13 384

暴力风扇改造桌上风扇__外壳模型

请配合笔者的文章【项目记录】服务器暴力风扇改造桌上风扇食用

2022-09-11

可适用于ESP32的Adafruit_PN532库

修改了针对ESP32的PN532SPI通信速度配置,使用宏定义选择速度,所以其原来适用于其他板子的能力不受影响 具体修改方法查看本人主页文章《【ESP32】Adafruit_PN532库用于ESP32上时出现的问题及解决方法》

2022-08-31

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

TA关注的人

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