自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 90/560/448

树枝去重是 index, 数层去重used=0,当前值为used=1;

2024-03-13 00:03:26 350 1

原创 32/234/114

【代码】32/234/114。

2024-03-07 19:24:14 345

原创 20/239/347

加入当前值以前,需要将前面一个值删除,那么需要判断是否是之前窗口中的最大值,即是否需要将队列出口最大值弹出。,出口始终为最大值,如果当前值比入口大的话,则取出比它小的值,然后将当前值推入队列;小顶堆,留着最大的k个元素在堆里面,动态变化数值。

2024-03-07 10:08:07 375

原创 84/121/309/1

找到左边和右边的较小值,说明以栈顶值为底的时候,不能扩展到这两个位置;数组头尾都加入0,使能够头尾元素可以作为底来计算。

2024-03-05 19:58:02 321

原创 647/516/42/121

dp[i][j] 内 【i,j】是都是回文子串, 是的话就为true其实就是判断两边的s[i],s[j]是否相同如果s[i]==s[j]相同的话,三种情况i==j, aj-i=1,aaj-i>1, 看 dp[i+1,j-1]是否为回文子串定义result来记录结果3.初始化,整体是个布尔类型的,可以全初始化为false,当有回文串存在的时候,就更改为为true从低往上遍历,看当前值的依赖项,从左往右开始遍历。

2024-03-05 15:24:39 310

原创 718/1143/53/392

t[j - 1]),此时相当于t要删除元素,t如果把当前元素t[j - 1]删除,那么dp[i][j] 的数值就是 看s[i - 1]与 t[j - 2]的比较结果了,即:dp[i][j] = dp[i][j - 1];

2024-02-15 21:34:59 366

原创 160/19

哈希表 count, insert。

2024-02-14 23:19:03 345 1

原创 300/674/337

dp[i]:以nums[i]为结尾的最长连续子序列的长度默认初始值为1,至少本身是的。dp[0]=1;i从开始,j要从开始遍历到,不断更替dp[j]的数值。nums[i]>nums[j]的时候更替dp[i],结果不一定存在dp[end],需要遍历取到最大值。

2024-02-13 17:17:44 375 1

原创 【无标题】

。dp[0]一定要为true,下标非0的dp[i]初始化为false。"apple" + "apple" + "pen" 或者 "pen" + "apple" + "apple" 是不可以的,那么我们就是强调物品之间顺序。

2024-02-13 14:00:34 352 1

原创 494/518/322

定义二维数组 dp,其中 dp[i][j]表示在数组nums 的前 i个数中选取元素,使得这些元素之和等于j 的方案数。假设数组 nums的长度为 nnn,则最终答案为 dp[n][neg]。

2024-02-11 22:07:12 381 1

原创 416/1049

尽量让石头分成重量相同的两堆,相撞之后剩下的石头最小,这样就化解成01背包问题。dp[j]: r容量为j的背包所能装下的最大价值为dp[i]( 此时石头的价值和容量是相等的)整体初始化为0第一层遍历物品,第二层遍历背包,倒序,只取一次// 开始 01背包i++) {j--) { // 每一个元素一定是不可重复放入,所以从大到小遍历向下取整,所以sum-dp[target]>=dp[target],,例如 11/2=5,那么11-5=6求解出来的数值不是自己想要的,需要打印dp数组。

2024-02-10 20:41:49 312 1

原创 155/647/621

【代码】155/647/621。

2024-02-06 20:15:02 357 1

原创 CMake

⚫ libhello 目录下的 CMakeLists.txt。⚫ src 目录下的 CMakeLists.txt。⚫ 顶层 CMakeLists.txt。

2023-12-20 22:24:34 365

原创 MQTT:window作为server,板子client发送数据

(当客户端发布的消息已 经确认发送时执行该回调函数,如果你的应用程序采用同步方式发布消息或者您不想检查是否成功发送时, 您可以将此设置为 NULL)。譬如 消息的负载,负载的长度,qos,消息的保留标志,dup标志,但是。包含了客户端遗嘱相关的信息,遗嘱主题、遗嘱内容、遗嘱消息的 QoS 等 级、遗嘱消息的保留标志等。(当客户端接收到服务端发送过来的消息时执 行该函数,必须设置此函数否则客户端无法接收消息)、,收到消息时也是对象,实例化时需要用。客户端创建之后,便可以连接服务器了,客户端发布消息时,需要。

2023-12-20 22:23:51 1661

原创 Android调试各种问题记录:

需要生成32-bit 并且是arm架构,ko文件才能被装到板子上使用。但问题出现了,一直显示找不到gcc文件。可以在dmesg里面看到打印信息,结合grep看想看的信息。吐了,KERNEL_DIR多打了一个/,解决了。ko文件装进去了,但是不显示printk信息。tar [主选项 + 辅选项] 文件或目录。2.对手表进行开关机以后,重复上面的操作。2.借助log串口调试助手,看驱动情况。1.电池插拔,重新开机。

2023-12-07 15:16:14 1873

原创 【无标题】

如果当前节点是叶子节点,则在当前路径末尾添加该节点后我们就得到了一条从根节点到叶子节点的路径,将该路径加入到答案即可。一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。当然是其左子树高度和其右子树高度的差值。如果当前节点不是叶子节点,则在当前的路径末尾添加该节点,并继续递归遍历该节点的每一个孩子节点。后序遍历:高度:指从该节点到叶子节点的最长简单路径边的条数。前序遍历:深度 :指从根节点到该节点的最长简单路径边的条数。给定一个二叉树,返回所有从根节点到叶子节点的路径。

2023-11-27 20:32:12 366

原创 【无标题】

层序遍历一个二叉树。就是从左到右一层一层的去遍历二叉树。需要借用一个辅助数据结构即队列来实现,1.注意每一层的节点数,需要记录下来;2.加入计数下,这一层节点数下的子节点。3.当这一层全部pop后,开启下一层。

2023-11-23 22:38:58 314 1

原创 【无标题】

写完了递归算法, 运行的时候,经常会遇到栈溢出的错误,就是没写终止条件或者终止条件写的不对,操作系统也是用一个栈的结构来保存每一层递归的信息,如果递归没有终止,操作系统的内存栈必然就会溢出。在递归的过程中,如何算是递归结束了呢,当然是当前遍历的节点是空了,那么本层递归就要结束了,所以如果当前遍历的这个节点是空,就直接return。确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这个参数, 并且还要明确每次递归的返回值是什么进而确定递归函数的返回类型。在这里也就会重复调用自己来实现递归的过程。

2023-11-22 14:47:57 25

原创 【无标题】

队列中只保存在窗口内的最大值,当输入新的数值时,跟前面的数值都先比较大小,然后将前面的小数值删除掉,留下相对大的,并且弹出的时候其实只要比较当前需要弹出的是不是当时窗口里面的最大值dp.pop_front(),因为小的值已经再插入新值的时候全部删除掉了(通过dq.back()比较小值,并且删除)。每次窗口移动的时候,调用que.pop(滑动窗口中移除元素的数值),que.push(滑动窗口添加元素的数值),然后que.front()就返回我们要的最大值。

2023-11-20 22:38:38 22 1

原创 【无标题】

在C语言中,把一个字符串存入一个数组时,也把结束符 '\0'存入数组,并以此作为该字符串是否结束在C++中,提供一个string类,string类会提供 size接口,可以用来判断string类字符串是否结束,KMP最浅显易懂的 KMP 算法讲解_哔哩哔哩_bilibili。

2023-11-17 21:19:30 17

原创 Day8

字符串的右旋转操作是把字符串尾部的若干个字符转移到字符串的前面。给定一个字符串 s 和一个正整数 k,请编写一个函数,将字符串中的后面 k 个字符移到字符串的前面,实现字符串的右旋转操作。使用split库函数,分隔单词,然后定义一个新的string字符串,最后再把单词倒序相加。举个例子,源字符串为:"the sky is blue "reverse() 需要写s.begin()+i。

2023-11-16 21:52:35 18 1

原创 【无标题】

题意:给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?示例: 给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。满足要求的四元组集合为: [ [-1, 0, 0, 1], [-2, -1, 1, 2], [-2, 0, 0, 2] ]满足要求的三元组集合为: [ [-1, 0, 1], [-1, -1, 2] ]

2023-11-14 23:47:55 132

原创 【无标题】

哈希表的内部实现原理哈希函数哈希碰撞哈希表的区别: 数组,set 和map什么时候想到用哈希法,当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。

2023-11-13 21:00:41 268

原创 训练营2023.11.11

C的递归版本需要再研究/(ㄒoㄒ)/~~

2023-11-12 01:17:27 134 1

原创 训练营11.10

1.创建虚拟头节点 , dummy =new ListNode(0);题目中的index 跟自己理解的有偏差 ,还得理解一下。2.cur = dummy ,看删除值的前一个值。3.终止条件 cur->next!pre, cur, tmp保存下一个节点。从后往前翻转指针指向 ,后面再看。

2023-11-10 22:33:00 504 1

原创 训练营11/9

不要以为for里放一个while就以为是O(n^2)啊, 主要是看每一个元素被操作的次数,每个元素在滑动窗后进来操作一次,出去操作一次,每个元素都是被操作两次,所以时间复杂度是 2 × n 也就是O(n)。第一想法是暴力解法,两个for循环分别获取子序列的起点和终点位置,当第二个for循环中sum条件达到时,break跳出第二个循环,第一个for'重新定义下一个子序列的起点。,只有一个for进行自序列终点位置的移动,达到sum的条件时,抛弃子序列的i起始位置并且sum减去该位置的数值,j继续移动。

2023-11-09 23:10:12 955

空空如也

空空如也

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

TA关注的人

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