自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 单细胞生物都能学会的树莓派4B实现路由器

本文参考自CSDN用户的本文补充其中的细节及遇到的问题。本文提及的代码,均需在树莓派终端中运行。

2024-07-24 10:38:06 815

原创 树莓派4 mosquitto 基本操作

QoS 0:速度最快,用于不关键的数据传输。QoS 1:确保数据送达,适合大多数应用。QoS 2:提供最高可靠性,适用于需要精确消息控制的场景。

2024-07-21 15:09:37 900

原创 代码随想录算法训练营第55天(py)| 单调栈 | 42. 接雨水*、84.柱状图中最大的矩形

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

2024-07-01 21:30:10 787

原创 问题记录-TensorFlow 1 - InternalError (see above for traceback): Blas GEMM launch failed

在复现一个开源项目https://github.com/macanv/BERT-BiLSTM-CRF-NER。有一个疑似TensorFlow-gpu、cudnn、cuda之间版本不兼容的问题。可以确定的是,显存充足(24G),batch-size足够小(调整为1依然报错),重启不能解决问题,程序没有错误(别人能够成功复现)

2024-07-01 15:03:08 223

原创 代码随想录算法训练营第53天(py)| 单调栈 | 739. 每日温度、496.下一个更大元素 I、503.下一个更大元素II

给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,请在该位置用 0 来代替。

2024-06-29 11:52:16 271

原创 代码随想录算法训练营第52天(py)| 动态规划 | 647. 回文子串、516.最长回文子序列

给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。

2024-06-28 11:12:02 484

原创 代码随想录算法训练营第51天(py)| 动态规划 | 115.不同的子序列、583. 两个字符串的删除操作、72. 编辑距离

给你两个字符串 s 和 t ,统计并返回在 s 的 子序列 中 t 出现的个数。

2024-06-28 10:38:16 319

原创 代码随想录算法训练营第50天(py)| 动态规划 | 1143.最长公共子序列、1035.不相交的线、53. 最大子序和、392.判断子序列

给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列(未必连续) 的长度。如果不存在 公共子序列 ,返回 0。

2024-06-26 17:29:36 490

原创 代码随想录算法训练营第49天(py)| 动态规划 | 300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组

给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列中的元素不要求在原数组中连续。

2024-06-25 16:33:31 294

原创 代码随想录算法训练营第48天(py)| 动态规划 | 188.买卖股票的最佳时机IV、309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费

最多可以完成 k 笔交易。也就是说,你最多可以买 k 次,卖 k 次。不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。

2024-06-24 10:53:08 394

原创 代码随想录算法训练营第46天(py)| 动态规划 | 121. 买卖股票的最佳时机 I、II、III

给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0。

2024-06-23 11:12:58 932

原创 代码随想录算法训练营第45天(py)| 动态规划 | 198.打家劫舍、213.打家劫舍II、337.打家劫舍III

你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金。如果,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组nums,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。

2024-06-21 16:42:05 478

原创 代码随想录算法训练营第44天(py)| 动态规划 | 322. 零钱兑换、279.完全平方数、139.单词拆分

给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。你可以认为每种硬币的数量是无限的。

2024-06-20 10:56:09 473

原创 代码随想录算法训练营第43天(py)| 动态规划 | 完全背包、518. 零钱兑换 II、377. 组合总和 Ⅳ、爬楼梯

完全背包和01背包问题唯一不同的地方就是,。有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i]。每件物品都有无限个(也就是可以放入背包多次),求解将哪些物品装入背包里物品价值总和最大。01背包内嵌的循环是从大到小遍历,为了保证每个物品仅被添加一次。在01背包中,遍历物品在外层,遍历容量在内层;而在完全背包中,两个for遍历的先后顺序不影响.

2024-06-19 17:01:09 952

原创 代码随想录算法训练营第42天(py)| 动态规划 |1049. 最后一块石头的重量 II、494. 目标和、474.一和零

有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。那么粉碎的可能结果如下:如果 x == y,那么两块石头都会被完全粉碎;如果 x!= y,那么重量为 x 的石头将会完全粉碎,而重量为 y 的石头新重量为 y-x。最后,最多只会剩下一块 石头。返回此石头 最小的可能重量。如果没有石头剩下,就返回 0。

2024-06-18 16:58:23 755

原创 代码随想录算法训练营第41天(py)| 动态规划 | 背包问题 二维、背包问题 一维(卡码)、416. 分割等和子集

有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i]。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。确定dp数组含义使用二维数组,dp[i][j] 表示,价值总和最大是多少。确定递推公式如果如果。

2024-06-17 22:16:09 618

原创 代码随想录算法训练营第39天(py)| 动态规划 | 62.不同路径、 63. 不同路径 II

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

2024-06-15 11:22:28 365

原创 代码随想录算法训练营第38天(py)| 动态规划 | 理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯

如果某一问题有很多重叠子问题,使用动态规划是最有效的。要用一个dp数组来保存递归的结果。

2024-06-14 16:58:49 379

原创 代码随想录算法训练营第37天(py)| 贪心 | 56. 合并区间、 738.单调递增的数字

给出一个区间的集合,请合并所有重叠的区间。

2024-06-13 20:55:37 186

原创 代码随想录算法训练营第36天(py)| 贪心 | 452. 用最少数量的箭引爆气球、435. 无重叠区间、763.划分字母区间

有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组 points ,其中points[i] = [xstart, xend] 表示水平直径在 xstart 和 xend之间的气球。你不知道气球的确切 y 坐标。一支弓箭可以沿着 x 轴从不同点 完全垂直 地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart ≤ x ≤ xend,则该气球会被 引爆。可以射出的弓箭的数量 没有限制。

2024-06-12 22:21:27 378

原创 代码随想录算法训练营第35天(py)| 贪心 | 1005.K次取反后最大化的数组和、134. 加油站、135. 分发糖果

给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组:选择某个下标 i 并将 nums[i] 替换为 -nums[i]。重复这个过程恰好 k 次。可以多次选择同一个下标 i。以这种方式修改数组后,返回数组 可能的最大和。

2024-06-11 22:34:18 332

原创 代码随想录算法训练营第32天(py)| 贪心 | 122.买卖股票的最佳时机II、55. 跳跃游戏、45.跳跃游戏II

给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。返回 你能获得的 最大 利润。

2024-06-09 09:26:29 177

原创 代码随想录算法训练营第31天(py)| 贪心 | 455.分发饼干、376. 摆动序列、53. 最大子序和

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j]。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。

2024-06-07 22:22:17 503

原创 代码随想录算法训练营第29天(py)| 回溯 | 491.递增子序列、46.全排列、47.全排列 II

给你一个整数数组 nums ,找出并返回所有该数组中不同的非递减子序列,至少有两个元素。你可以按 任意顺序 返回答案。

2024-06-06 10:14:40 286

原创 代码随想录算法训练营第28天(py)| 回溯 | 93.复原IP地址、78.子集、90.子集II

给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。有效的IP地址不能含有前导0,共有4个字段,且每个字段不能超过255。

2024-06-04 20:02:48 278

原创 代码随想录算法训练营第27天(py)| 回溯 | 39. 组合总和、40.组合总和II、131.分割回文串

给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字。说明:所有数字(包括 target)都是正整数。解集不能包含重复的组合。

2024-06-03 20:10:49 394

原创 代码随想录算法训练营第25天(py)| 回溯 | 216.组合总和III、17.电话号码的字母组合

找出所有相加之和为 n 的 k 个数的组合,且满足下列条件:只使用数字1到9每个数字 最多使用一次返回 所有可能的有效组合的列表。该列表不能包含相同的组合两次,组合可以以任何顺序返回。

2024-06-03 16:35:52 330

原创 代码随想录算法训练营第24天(补充)(py)| 二叉树 | 235. 二叉搜索树的最近公共祖先、701.二叉搜索树中的插入操作、450.删除二叉搜索树中的节点

给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。

2024-05-31 16:30:53 289

原创 代码随想录算法训练营第23天(py)| 回溯 | 理论基础、77. 组合

回溯是递归的副产品,只要有递归就会有回溯。回溯法解决的问题。回溯法,一般可以解决如下几种问题:组合问题:N个数里面按一定规则找出k个数的集合切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集排列问题:N个数按一定规则全排列,有几种排列方式棋盘问题:N皇后,解数独等等回溯法一般是在集合中递归搜索,集合的大小构成了树的宽度,递归的深度构成的树的深度。

2024-05-30 21:28:44 271

原创 代码随想录算法训练营第22天(py)| 二叉树 | 669. 修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

给定一个二叉搜索树,同时给定最小边界L 和最大边界 R。通过修剪二叉搜索树,使得所有节点的值在[L, R]中 (R>=L)

2024-05-29 22:21:02 667

原创 代码随想录算法训练营第21天(py)| 二叉树 | 530.二叉搜索树的最小绝对差、501.二叉搜索树中的众数、236. *二叉树的最近公共祖先

给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值。差值是一个正数,其数值等于两值之差的绝对值。

2024-05-28 20:32:46 221

原创 代码随想录算法训练营第20天(py)| 二叉树 | 654.最大二叉树、617.合并二叉树、700.二叉搜索树中的搜索、98.验证二叉搜索树

给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下:二叉树的根是数组中的最大元素。左子树是通过数组中最大值左边部分构造出的最大二叉树。右子树是通过数组中最大值右边部分构造出的最大二叉树。通过给定的数组构建最大二叉树,并且输出这个树的根节点。

2024-05-27 17:15:52 276

原创 问题记录_stm32“No target connected“

在项目中找到__HAL_AFIO_REMAP_SWJ_DISABLE();stm32cubeMX生成代码时关闭了SWJ调试功能。然后短按复位键的同时点烧录。

2024-05-27 15:08:20 325

原创 FreeRTOS_软件定时器_学习笔记

软件定时器基于系统滴答终端(Tick Interrupt)有两种状态:运行(Running、Active)和冬眠(Dormant)有两种类型:一次性(One-shot)和自动加载(Auto-reload)示例:Timer1是一次性定时器,周期6tick,t1启动t7执行回调函数,然后冬眠Timer2是自动加载定时器,周期5tick,没经过一个周期执行一次回调函数。

2024-05-25 16:39:38 402

原创 FreeRTOS_任务通知_学习笔记

使用队列、信号量、事件组等等方法时,并不知道对方是谁。使用任务通知时,可以明确指定:通知哪个任务。使通知值+1,并使状态变为“pending”,表示有数据,待处理。每个任务有一个TCB结构体,里面包括通知状态和通知值。任务通知只能一个一个发任务,而且不能广播给多个任务。如果通知值为0则任务阻塞;通知值大于0则任务就绪。通知值可以是计数值,二进制位,任意数值。任务通知值,只能保持一个数据。数据智能给目标任务独享。等待,只能即刻返回错误。任务通知结构体中只有。暂时先记录简化版函数。

2024-05-25 15:04:16 268

原创 代码随想录算法训练营第十八天(py)| 二叉树 | 513.找树左下角的值、112. 路径总和、106.从中序与后序遍历序列构造二叉树

给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。

2024-05-25 14:56:03 885

原创 代码随想录算法训练营第十七天(py)| 二叉树 | 110.平衡二叉树、 257. 二叉树的所有路径、404.左叶子之和

给定一个二叉树,判断它是否是 平衡二叉树(所有节点的左右子树深度不会超过1)

2024-05-24 16:55:12 214

原创 FreeRTOS_事件组_学习笔记

事件组是一个整数,其中的高8位留给内核,只能用其他位来表示时间每一位代表一个事件,且每个时间的含义由程序员决定1为发生,0为未发生一个/多个任务或ISR都能读写这些位可以等待某一位,也可以等待多个位事件组有作用,会唤醒所有复合条件的任务;而队列和信号量只会唤醒一个任务。事件组唤醒任务后,可以让事件不动,也可以清除事件。

2024-05-23 21:21:24 420

原创 FreeRTOS_互斥量_学习笔记

数值只有0或1谁获得互斥量,就必须由谁释放同一个互斥量。但其实在freeRTOS中,任务A获取的互斥锁,任务B也能释放。因此谁上锁谁开锁只是约定,在程序实现上不是强制的。"是指:多个任务同时调用它、任务和中断同时调用它,函数的运行也是安全的。可重入的函数也被称为"线程安全”(thread safe)。每个任务都维持自己的栈、自己的CPU寄存器,如果一个函数,那么它就是的。

2024-05-23 20:03:15 990

原创 代码随想录算法训练营第十六天(py)| 二叉树 | 104.二叉树的最大深度、111.二叉树的最小深度、222.完全二叉树的节点个数

给定一个二叉树 root ,返回其最大深度。二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。

2024-05-23 15:18:57 402

空空如也

空空如也

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

TA关注的人

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