- 博客(8)
- 资源 (8)
- 收藏
- 关注
原创 动态规划
这里写自定义目录标题动态规划定义应用步骤举例动态规划定义应用步骤举例给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。详细参考:https://leetcode-cn.com/problems/longest-palindromic-substring/solution/zui-chang-hui-wen-zi-chuan-by-leetcode-solution/输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。输
2020-08-24 22:10:05
177
原创 红黑树:节点插入与删除
红黑树定义红黑树是一种二叉查找树,具有如下性质:1.节点是红色或黑色 2. 根是黑色 3. 所有叶子都是黑色(叶子是NIL节点) 4. 如果一个节点是红的,则它的两个儿子都是黑的 5. 从任一节点到其叶子的所有简单路径都包含相同数目的黑色节点(黑色节点平衡) 6. 新插入节点为红色红黑树应用C++的STL,map和set都是用红黑树实现的。 著名的linux进程调度Completely Fair Scheduler,用红黑树管理进程控制块。 epoll在内核中的实现,用红黑树..
2020-07-08 23:59:17
978
原创 回溯算法
文章目录回溯算法定义举例 n皇后(LeeCode 51题)回溯算法定义 回溯法是一种系统搜索问题解空间的方法。为了实现回溯,需要给问题定义一个解空间。说到底它是一种搜索算法。只是这里的搜索是在一个叫做解空间的地方搜索。要实现回溯,需要两点1搜索,2解空间。 &nb...
2019-10-15 09:50:42
207
原创 从中序遍历和后序遍历序列创建二叉树
从中序遍历和后序遍历序列创建二叉树思路分析C语言实现思路分析二叉树相关的很多问题的解决思路都有分治法的思想在里面。分治法的思想:把原问题分解(Divide)成若干个与原问题结构相同但规模更小的子问题,待子问题解决(Conquer)以后,再合并(Combine)它们,原问题就得以解决,“归并排序” 和 “快速排序” 都是分治法思想的应用,其中 “归并排序” 先无脑地“分”,在 “合” 的时候就...
2019-10-09 11:51:18
1372
2
原创 STM32F1(Cortex M3内核)位带操作
本文参考《STM32_参考手册》2.3.2 位段 《CM3权威指南》第五章 存储器系统Cortex M3内核有两个位带区,对应的是片上RAM区和片上外设的最低的1MB地址范围,而位带别名区里面的每个字对应位带区的一个比特,也就是对位带别名区的一个字的操作相当于对位带区对应一个位的置零或者置一。Cortex M3的位带区和位带别名区如下图所示。从位
2017-06-20 19:52:34
2225
原创 STM32F1(Cortex M3内核)存储器映射
Cortex m3内核规定的存储器映射如下图所示。就好像ARM公司打造了一个柜子,从上到下有这几个抽屉,它规定了每个抽屉放的东西的种类,具体放什么放多少它不管(只要不超过抽屉的大小),由每个芯片厂商自己决定。图1 cortex m3存储器映射我们来看看ST公司打造的STM32F1系列芯片是如何在这些抽屉放置东西的。代码抽屉在代码这个抽屉,STM32F1布置了Flash模
2017-06-20 10:26:18
12253
6
转载 printf重定向
半主机是用于 ARM 目标的一种机制,可将来自应用程序代码的输入/输出请求传送至运行调试器的主机。 例如,使用此机制可以启用 C 库中的函数,如 printf() 和 scanf(),来使用主机的屏幕和键盘,而不是在目标系统上配备屏幕和键盘。这种机制很有用,因为开发时使用的硬件通常没有最终系统的所有输入和输出设备。 半主机可让主机来提供这些设备。半主机是通过一组定义好的软件指令(如
2017-04-24 21:15:44
2191
转载 FreeRTOS临界段和开关中断
FreeRTOS临界段和开关中断转载自:http://bbs.armfly.com/read.php?tid=21162本章教程为大家讲解两个重要的概念,FreeRTOS的临界段和开关中断。本章教程配套的例子含Cortex-M3内核的STM32F103和Cortex-M4内核的STM32F407以及F429。15.1 临界段15.2 任务代码临界
2017-04-23 10:48:45
6742
斯坦福大学机器学习课程讲义
2017-11-07
AI圣经 Deep Learning中文版
2017-10-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人