- 博客(192)
- 收藏
- 关注
原创 第一天_点灯小师_初识CubeIDE
摘要:本文记录了STM32开发入门的第一课——点亮LED灯的过程。首先使用CubeIDE创建项目,配置PA10为GPIO输出模式。介绍了输入输出模式的区别和代码编写规范,强调要在指定注释区间内编写代码以防被自动生成代码覆盖。详细说明了开发板与烧录器的接线方法(SWCLK、SWDIO、GND、3V连接)以及面包板的使用原理。最后实现LED灯闪烁功能,既可编程控制(高低电平切换),也可直接供电点亮。文章涵盖了STM32开发的初始步骤和硬件连接要点。
2025-07-03 22:25:37
237
原创 动态规划_数组切分
如果j ~ i 是符合条件的 那么就把他们当作一个整体 然后在此位置进行一次切分 然后加上dp[j - 1 ] 也就是加上前面的方案数 整合到一起 然后 还在继续往前遍历j 然后又找到了一个新的符合条件的j 又要执行一次累加 这次的累加 还是加上 dp[j - 1 ]的切分情况 然后在j ~ i进行一次切分 这次 的切分 也多了几个数 ( 因为是j ~ i 这次的 j 变得更加小了 ) 所以不存在重复累加。因为出现了一个新的nums[i] 那么就阻止了重复累加的出现。
2025-02-27 10:25:25
278
原创 线性dp_接龙数列
对于23这个数的话 使用 dp[r] = dp[left] + 1 那么就是添乱 因为dp[3]本来就很大了 那么如果再dp[3] = dp[2] + 1 那么就会变得很小 那么我们就可以舍弃这个数。那么可以得到状态转移方程 dp[r] = dp[left] + 1 那么这样子还是不可以的。新的状态转移方程dp[r] = max(dp[left] + 1, dp[r])他们的关系是 : 如果该数第一位存在 那么该数就可以接龙 状态数接在该数的尾数。改善一下 有点dp的样子。
2025-02-25 10:26:03
242
原创 704. 二分查找
定义左右边界为 -1 n 结束条件 left + 1 == right注意的是 n == 1 会照成越界 需要分类讨论还要注意 有些空数组 还有很多数组越界的问题。
2025-02-10 20:01:36
244
原创 哈希表_优质数对
但是 在最坏的情况下 还是退化成了O(n^2) 还是没能通过所有案例。开始并没有什么思路 直接暴力算法 但是超时了 并不能通过全部案例。后面使用hash表 查找是否在A中出现B B中出现A。那相同元素的不同位置 我们可以存储在一个vector当中。O(n*n)的时间复杂度在10^5还是略显没什么优势。但是这个方法还是存在缺陷 就是输入相同元素时 会覆盖。确保TMP 足够大 映射唯一值。那么这样子就要用到映射函数了。通常定义为10^9 + 7;
2025-02-09 11:10:32
363
原创 leetcode_264. 丑数 II
居然已经给出了丑数的因子 那么我们可直接用最小的丑数 * 因子 就可以得到另一个丑数。本来是想像求素数那样子求出丑数 但是发现这个数据量好像有点大 但是 On²。的时间复杂度在10000的数据量还是可以接受的。但是用逆向思维 可以很轻松得到结果。
2025-02-02 14:07:55
255
原创 priority_queue
1. pop操作是先将栈顶元素和栈底元素互换 然后再将栈顶元素下沉 然后删除栈顶。priority_queue也可以比抽象类 只要<重载 指定比较对象就可以。一些与别的stl不同的地方。
2025-02-02 11:02:20
291
原创 c++ map
在当前key已经存在value时 insert不会改变当前key的value 但是m[ ]会。其实和前面的没什么区别 就是有一点点的区别 他的insert比较复杂 和可以比较简单。// m[] 和 insert 的区别。
2025-02-02 10:17:25
211
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅