自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(115)
  • 资源 (21)
  • 收藏
  • 关注

转载 奇异值分解(SVD)方法求解最小二乘问题

奇异值分解(SVD)方法求解最小二乘问题奇异值分解(SVD)原理SVD的一些性质线性最小二乘问题奇异值分解与线性最小二乘问题AX=bAX=0奇异值分解(SVD)原理详解参考:奇异值分解(SVD)方法求解最小二乘问题的原理SVD的一些性质上面几节我们对SVD的定义和计算做了详细的描述,似乎看不出我们费这么大的力气做SVD有什么好处。那么SVD有什么重要的性质值得我们注意呢?对于奇异值,它跟我们特征分解中的特征值类似,在奇异值矩阵中也是按照从大到小排列,而且奇异值的减少特别的快,在很多情况下,前10%

2020-11-25 17:17:40 24

转载 particle filtering---粒子滤波

particle filtering---粒子滤波(讲的很通俗易懂)particle filtering—粒子滤波(讲的很通俗易懂)

2020-11-24 11:01:11 21

转载 轻松理解Kalman Filter

轻松理解Kalman Filter参考视频理解过程参考视频什么是卡尔曼滤波?理解过程问题提出其中,p:位置,u:速度,PkP_kPk​:协方差矩阵如何直观地理解「协方差矩阵」?浅谈协方差矩阵在统计学中,方差是用来度量单个随机变量的离散程度,而协方差则一般用来刻画两个随机变量的相似程度,协方差的结果有什么意义呢?如果结果为正值,则说明两者是正相关的(从协方差可以引出“相关系数”的定义),也就是说一个人越猥琐越受女孩欢迎。如果结果为负值, 就说明两者是负相关,越猥琐女孩子越讨厌。如果为0

2020-11-24 10:57:52 12

转载 区间dp问题

区间dp问题区间DP概念思路+模板例题1.石子合并直线版NOI1995 石子合并参考:区间DP题型总结全网最最最最最详细的区间dp题目总结!!https://blog.csdn.net/noiau/article/details/72514812区间DP概念区间DP是线性DP的扩展,分阶段地划分问题,与阶段中元素出现的顺序和由前一阶段的哪些元素合并而来有很大的关系。状态转移方程:dp[i][j]=min{dp[i][k]+dp[k+1][j]}+cost[i][j]或者dp[i][j]=

2020-11-24 10:56:57 13

原创 求树中两个节点的最低公共祖先节点

最低公共祖先

2020-11-24 10:54:37 11

转载 前缀表达式,后缀表达式,中缀表达式

前缀表达式,后缀表达式,中缀表达式人看到的是中缀表达式计算机便于计算的是前缀/后缀表达式中缀转前缀,两个栈s1,s2,从右往左扫描中缀表达式,遇到符号和)则将符号都入栈s1,遇到数字则将数字入栈s2,//当遇到(,则将s1弹出至s2顶,直到s1中遇到),记住这里的操作就是去掉括号(和),//直到中缀表达式扫完,则将s1剩余元素全部弹出到s2。最后s2中的元素依次出栈形成的序列就是前缀表达式。中缀转后缀,两个栈s1,s2,从左往右扫描中缀表达式,遇到符号和(则将符号都入栈s1,遇到数字则将数字入栈

2020-11-24 10:44:33 12

转载 学习方法论

艾宾浩斯遗忘曲线德国心理学家艾宾浩斯记忆的规律第一,遗忘先快后慢这条曲线告诉我们学习中的遗忘是有规律的,在记忆的最初阶段遗忘的速度很快,后来就逐渐减慢了,到了相当长的时候后,几乎就不再遗忘了,这就是遗忘"先快后慢"的原则。观察这条遗忘曲线,你会发现,学得的知识在一天后,如不抓紧复习,就只剩下原来的25%)。随着时间的推移,遗忘的速度减慢,遗忘的数量也就减少。下面是一份遗忘曲线表格...

2020-11-24 10:42:45 14

转载 概率函数P(x)、概率分布函数F(x)、概率密度函数f(x)

写在前面:进入主题前,先明确几个概念:离散型变量(或取值个数有限的变量):取值可一一列举,且总数是确定的,如投骰子出现的点数(1点、2点、3点、4点、5点、6点)。连续型变量(或取值个数无限的变量):取值无法一一列举,且总数是不确定的,如所有的自然数(0、1、2、3……)。离散型变量取某个值xi的概率P(xi)是个确定的值(虽然很多时候我们不知道这个值是多少),即P(xi)≠0:例如,投一...

2020-11-24 10:35:43 46

转载 矩阵奇异值分解(详解)

  转载于https://blog.csdn.net/u011251945/article/details/81362642    在网上看到有很多文章介绍SVD的,讲的也都不错,但是感觉还是有需要补充的,特别是关于矩阵和映射之间的对应关系。前段时间看了国外的一篇文章,叫A S...

2020-11-24 10:32:14 30

原创 C++基础知识总结一

C++基础知识总结一代码命名规范源码、反码、补码Unicode、UTF16、UTF8、UTF32C/C++中字面量数的类型是intC语言中无符号数和有符号数之间的运算负数的左移和右移计算机中浮点数的表示、存储方式运算符的优先级C++基本数据类型静态库与动态库静态链接和动态链接区别动态绑定与静态绑定软链接/硬链接C++函数参数入栈顺序C++地址空间从上到下讲讲C++关键字static关键字volatile关键字const关键字mutable关键字externexplicit宏展开和内联函数区别当函数调用的时候

2020-11-24 10:30:53 47

原创 epoll怎么保证数据能够读完

epoll怎么保证数据能够读完read/write的返回值LT模式下的工作流程ET模式下的工作流程epoll中超时时间select在什么场景下比epoll要快read/write的返回值1、read /write#include <unistd.h>ssize_t read(int filedes, void* buf, size_t nbytes)ssize_t write(int filedes, const void* buf, size_t nbytes)其中,read返回

2020-11-24 10:23:43 8

转载 蓄水池抽样算法

从n个元素中随机取m个元素蓄水池抽样算法洗牌算法其他蓄水池抽样算法蓄水池抽样算法给定一个数据流,数据流长度N很大,且N直到处理完所有数据之前都不可知,请问如何在只遍历一遍数据(O(N))的情况下,能够随机选取出m个不重复的数据。这个场景强调了3件事:数据流长度N很大且不可知,所以不能一次性存入内存。时间复杂度为O(N)。随机选取m个数,每个数被选中的概率为m/N。算法思路大致如下:如果接收的数据量小于m,则依次放入蓄水池。当接收到第i个数据时,i >= m,在[0, i]

2020-11-04 12:34:48 20

转载 MySQL的最左前缀原则和联合索引失效的情况

MySQL的最左前缀原则和联合索引失效的情况从索引的底层结构看待最左前缀原则一、多列索引在and查询中应用二、多列索引在范围查询中应用三、多列索引在排序中应用四,总结索引失效的情况复合(联合)索引失效解析从索引的底层结构看待最左前缀原则b+tree结构对于复合索引(多列b+tree,使用多列值组合而成的b+tree索引)。遵循最左侧原则,从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。例如索引是key index (a,b,c). 可以支持a a,b a,b,c 3

2020-10-02 17:12:48 61

转载 买卖股票问题

买卖股票问题买卖股票问题I122. 买卖股票的最佳时机 II买卖股票问题I121. 买卖股票的最佳时机给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能

2020-09-24 22:47:42 29

原创 单线程的Redis如何能够高并发

单线程的Redis如何能够高并发0.预备知识1.官方答案其他补充答案参考:单进程单线程的Redis如何能够高并发Redis为什么是单线程,高并发快的3大原因详解为什么redis 是单线程的?0.预备知识CPU到底比内存跟硬盘快多少大概意思是:假设把CPU执行一个指令的时间定义为1s则读取一级缓存将花费1.3s分支预测将花费13s读取二级缓存将花费18.2s内存寻址260s,将近4分钟一次CPU上下文切换大概需要65分钟在1Gbps的网络上传输 2K 的数据需要14.4小时

2020-09-24 22:45:02 28

转载 字符串查找函数和KMP算法原理及实现

字符串查找string自带的成员函数findKMP算法string自带的成员函数findC++中的find函数使用的是朴素匹配算法,最坏时间复杂度 ,空间复杂度 。KMP算法KMP算法的时间复杂度 ,空间复杂度为 。如果按照渐进复杂度的估计,我们自然是应该使用KMP算法了。那么为什么C++中的find函数不使用KMP算法呢?我个人认为是以下几点原因:在大多数常见场景下,需要匹配的字符是比较短的,朴素的蛮力匹配算法速度以及很快了。在使用KMP算法的时候,需要进行预处理,初始化的时间开

2020-09-24 22:42:14 81

原创 素数相关习题

素数相关习题判断素数找出1~n内所有的素数素数相关的面试题判断素数素数:只能被1和他本身整除的数因为如果能找到两个因子相乘等于n的话,那么这两个数一定是位于sqrt(n)的两边的,所以我们只用判断[2,sqrt(n)]之间是否有数能够整除n即可判断bool isPrime(int n){ if(1==n) return true; for(int i=2;i<=sqrt(n);i++){ if(n%i==0) return false;

2020-08-27 11:00:03 60

原创 动态规划之零钱兑换

零钱兑换问题带备忘录的递归解法动态规划解法模拟0 1完全背包问题的解法322. 零钱兑换给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。示例 1:输入: coins = [1, 2, 5], amount = 11输出: 3解释: 11 = 5 + 5 + 1示例 2:输入: coins = [2], amount = 3输出: -1说明:你可以认为每种硬币的数量是无限

2020-08-20 15:08:49 93

转载 约瑟夫环问题

约瑟夫环问题模拟约瑟夫环问题循环数组模拟链表模拟数学分析模拟约瑟夫环问题循环数组模拟经典算法–约瑟夫环问题的三种解法问题描述:N个人围成一圈,从第一个人开始从1开始报数,报到m的人出圈,剩下的人继续从1开始报数,报到m的人出圈;如此往复,直到所有人出圈。(模拟此过程,输出出圈的人的序号)循环的开始和结束:循环的结束取决于圈内是否还有“人”,可以用一个变量alive表示初始人数,每一次出圈,alive - 1。判断alive是否非0即可。while(alive > 0)每一次循环,就是

2020-08-20 14:39:15 28

原创 C/C++字符串处理相关总结

字符串处理相关清空字符串区域复制字符串区域搜索字符串相关字符串转整型字符串转浮点型整型转字符串清空字符串区域memset()char* m_buf = new char[10]; memset(m_buf, '\0', 10);bzero()复制字符串区域strcpy()搜索字符串相关strrchr字符串转整型atoi字符串转浮点型atofatod整型转字符串snprintf...

2020-08-20 14:34:15 64

原创 图系列之_图的表示和遍历

图系列之_图的表示图两种表示方法图的遍历(DFS和BFS)代码实现无向图有向图参考:数据结构——图的概述图是由顶点V集和边E集构成,因此图可以表示成G=(V,E)G=(V,E)G=(V,E)。图两种表示方法1.邻接矩阵法;无向图邻接矩阵的特点为:主对角线一定为0且为对称矩阵有向图邻接矩阵是最容易理解的表示方法,优点是简单易懂,缺点是可能会占用很多存储空间,且没有任何意义,空间复杂度有向图是O(n2)O(n^2)O(n2)如果图的边不是很多,则不太适合用邻接矩阵表示。一般邻接矩阵适合表

2020-08-17 21:10:24 53

转载 观察者模式

观察者模式引入代码示例1代码示例2参考:设计模式之观察者模式C++设计模式——观察者模式引入观察者模式(Observer),又叫发布-订阅模式(Publish/Subscribe),定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。UML结构图如下:Subject(目标)——目标知道它的观察者。可以有任意多个观察者观察同一个目标;——提供注册和删除观察者对象的接口。Observer(观察者)——为那些在目标发生改变时需获得通知的对象定

2020-08-06 15:04:45 40

转载 unique_ptr和share_ptr的简单实现

unique_ptr和share_ptr的实现原理

2020-08-04 17:53:52 57

转载 红黑树原理详解

STL源码剖析—红黑树原理详解上https://blog.csdn.net/Hackbuteer1/article/details/77409561、黑父如下图所示,如果新节点的父结点为黑色结点,那么插入一个红点将不会影响红黑树的平衡,此时插入操作完成。红黑树比AVL树优秀的地方之一在于黑父的情况比较常见,从而使红黑树需要旋转的几率相对AVL树来说会少一些。2、红父如果新节点的父结点为红色,这时就需要进行一系列操作以保证整棵树红黑性质。如下图所示,由于父结点为红色,此时可以判定,祖父结点必定为黑

2020-08-04 17:19:58 70

转载 自己编写strlen、strcpy、strcmp、strcat、memset、memcpy

不使用库函数、自己编写的(strlen、strcpy、strcmp、strcat、memcmp、memcpy、memmove)

2020-08-02 20:37:33 39

原创 实现字符串反转

字符串反转零.标准库提供的函数一.自己实现的字符串反转二.字符串中单词反转零.标准库提供的函数使用algorithm中的reverse函数#include <iostream>#include <string>#include <algorithm>using namespace std; int main(){ string s = "hello"; reverse(s.begin(),s.end()); cout<&lt

2020-08-02 20:05:34 37

原创 C++从文件中读入多行数据

C++从文件中读入多行数据std::ifstream练习题C++中文件的读取操作,如何读取多行数据,如何一个一个的读取数据std::ifstream来自std::ifstream常用的成员函数如下Public member functions函数功能(constructor)Construct object and optionally open file (public member function )openOpen file (public member f

2020-08-02 16:07:47 212

原创 C++从键盘输入多行数据

C++从键盘输入多行数据1. scanf函数2.cin1. scanf函数https://blog.csdn.net/liuuze5/article/details/51098471函数原型int scanf(const char *format,...);调用形式:scanf("<格式说明字符串>",<变量地址>);变量地址要求有效,并且与格式说明的次序一致。返回值:scanf()函数返回成功赋值的数据项数,读到文件末尾出错时则返回EOF。如:scanf("%d

2020-07-31 02:09:58 1052

转载 scanf函数使用

scanf函数使用scanf函数解决问题问题一问题二来自https://blog.csdn.net/liuuze5/article/details/51098471scanf函数函数原型int scanf(const char *format,...);调用形式:scanf("<格式说明字符串>",<变量地址>);变量地址要求有效,并且与格式说明的次序一致。返回值:scanf()函数返回成功赋值的数据项数,读到文件末尾出错时则返回EOF。如:scanf("%d %d

2020-07-31 02:07:51 55

转载 C++11 std::chrono库

C++11 std::chrono库Durations持续时间类Time points 时间点Clocks时钟来自C++11 std::chrono库详解chrono是一个time library, 源于boost,现在已经是C++标准。头文件#include<chrono>名称空间std::chrono命名空间里chrono是一个模版库,使用简单,功能强大,只需要理解三个概念:duration、time_point、clockDurations持续时间类std::chr

2020-07-27 22:08:32 42

原创 字符串转数字,数字转字符串

字符串转整数,整数转字符串atoiatofatodsprintf函数atoiatofatodsprintf函数头文件:#include <stdio.h>sprintf()函数用于将格式化的数据写入字符串,其原型为:int sprintf(char *str, const char *format, ...) 【参数】str – 这是指向一个字符数组的指针,该数组存储了 C 字符串。format – 这是字符串,包含了要被写入到字符串 str 的文本。它可以包含嵌入的 f

2020-07-27 00:17:16 102

原创 二叉树的序列化与反序列化

二叉树的序列化与反序列化

2020-07-25 23:42:42 53

转载 虚函数实现原理

前言C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。关于虚函数的使用方法,我在这里不做过多的阐述。大家可以看看相关的C++的书籍。在这篇文章中,我只想从虚函数的实现机制上面为大家一个清晰的剖析。当.

2020-07-25 00:42:33 34

转载 Linux下的五种IO模型

Linux下的五种IO模型《UNIX网络编程:卷一》第六章——I/O复用。书中向我们提及了5种类UNIX下可用的I/O模型:阻塞式I/O;非阻塞式I/O;I/O复用(select,poll,epoll…);信号驱动式I/O(SIGIO);异步I/O(POSIX的aio_系列函数);其中,前四个被称为同步IO,为啥?参考:https://www.zhihu.com/question/19732473/answer/26101328阻塞式I/O模型:默认情况下,所有套接字都是阻塞的。怎么

2020-07-18 21:15:49 42

原创 recv/send堵塞和非堵塞

recv/send堵塞和非堵塞理解TCP之深入浅出send和recv需要理解的3个概念实例详解send()send函数recv函数参考:TCP之深入浅出send和recvlinux下非阻塞的tcp研究题外话今天在看epoll的ET模式时,说ET模式时,套接字描述符必须设置成非堵塞模式,于是想看看堵塞和非堵塞recv/send的区别,网上鱼龙混杂的博文,错误百出,查了好久,在此做个总结TCP之深入浅出send和recv需要理解的3个概念1.TCP socket的buffer每个TCP

2020-07-18 02:54:32 161

原创 动手实现一个string类

实现一个string类

2020-07-16 23:04:34 48

原创 二分查找总结

二分查找总结怎么写二分查找**关键点:**动手写二分查找相关例题旋转数组的最小数字爱吃香蕉的珂珂二分查找要求:线性表是有序表,即表中结点按关键字有序,并且要用向量作为表的存储结构。适用情况二分查找只适用顺序存储结构。为保持表的有序性,在顺序结构里插入和删除都必须移动大量的结点。因此,二分查找特别适用于那种一经建立就很少改动、而又经常需要查找的线性表。对那些查找少而又经常需要改动的线性表,可采用链表作存储结构,进行顺序查找。链表上无法实现二分查找。怎么写二分查找求下界问题:1.求大于等于tar

2020-07-15 17:17:49 59

转载 并查集Disjoint_set

并查集Disjoint_set

2020-07-13 23:26:19 56

原创 标准库之find()和find_if()函数

标准库之find和find_if函数 find()find_if()find()C++标准库中的find,find_if函数可以用于对数组、容器等进行查找。http://www.cplusplus.com/reference/algorithm/find/头文件 #include <algorithm>声明template <class InputIterator, class T> InputIterator find (InputIterator firs

2020-07-13 19:38:01 109

转载 乐观锁 悲观锁 自旋锁

乐观锁 悲观锁 自旋锁https://blog.csdn.net/wolfGuiDao/article/details/105253815

2020-07-13 16:18:27 86

aurora+micro-miktex+keygen.7z

在word中可以通过软件Aurora把latex公式直接搬到word里面。 资源包括aurora,micro-miktex,keygen及安装说明, 亲测可用

2019-12-11

路径规划与避障算法讲义.pdf

浙江大学控制系智能系统与控制研究所 讲义, 主要是关于路径规划和避障方面的算法介绍, 写得很好,分享给大家。

2019-12-02

Motion Controller Design for a Mecanum Wheeled Mobile Manipulator.pdf

Motion Controller Design for a Mecanum Wheeled Mobile Manipulator.pdf 论文是关于四轮麦克纳轮航迹推演的具体过程, 主要是怎样从四个轮子的速度到车体速度的转换和从车体速度到四个轮子速度的转换。 需要的可以下载

2019-12-02

Kinematic Model of a Four Mecanum Wheeled Mobile Robot .pdf

Kinematic Model of a Four Mecanum Wheeled Mobile Robot .pdf 论文是关于四轮麦克纳轮航迹推演的具体过程, 主要是怎样从四个轮子的速度到车体速度的转换和从车体速度到四个轮子速度的转换。 需要的可以下载

2019-12-02

g2o-master.zip

用于图优化的库,直接从github上clone下来的,g2o-master.zip

2019-09-20

ceres-solver-1.13.0.zip

用于优化的库ceres-solver, ceres-solver-1.13.0.zip

2019-09-20

人头分类器训练数据集.7z

用于分类器训练的人头数据,人头和背景分开保存,可以用于训练级联分类器

2019-08-23

车牌图片集(237幅车牌照片).zip

用于车牌检测时测试的图片数据,图片质量一般,但可以一用。

2019-06-18

标准车牌字符模板.zip

用于车牌识别的标准字符模板,如果使用字符匹配的方式,那应该可以用下。

2019-06-18

车牌字符集(图片较多).zip

用于车牌识别的字符集,包含数字,字母和中文,内容比较充实。

2019-06-18

算法导论(清晰版)

算法导论是学习算法者的一本入门的经典书籍,对于像入门算法的学生有很大帮助

2018-04-18

C专家编程(清晰版)

C专家编程(清晰版)是一本优秀的C语言书籍,可以作为新手的第二本C语言书籍。

2018-04-18

2015电赛风力摆设计报告

2015电赛风力摆设计报告

2017-09-07

光电二极管及其放大电路设计

《光电二极管及其放大电路设计》内容简介:光电技术是一个高科技行业,光电二极管是光通信接收部分的核心器件。《光电二极管及其放大电路设计》系统地讨论了光接收及放大电路的设计和解决方案中的带宽、稳定性、相位补偿、宽带放大电路、噪声抑制等问题。《光电二极管及其放大电路设计》专业性强,系统架构由简到难,理论与实践相结合,具有较强的应用性、资料性和可读性。《光电二极管及其放大电路设计》适合光信息科学与技术、电子科学与技术、光通信相关专业的高校师生及研发人员使用。

2017-09-07

MSP430F149数据手册

MSP430F149数据手册MSP430F149数据手册MSP430F149数据手册MSP430F149数据手册MSP430F149数据手册MSP430F149数据手册MSP430F149数据手册

2017-09-07

PID参数调整

PID参数调整PID参数调整PID参数调整PID参数调整PID参数调整PID参数调整PID参数调整PID参数调整PID参数调整PID参数调整

2017-09-07

MSP430F149 + ToggleIO

MSP430F149 + ToggleIO

2017-07-15

MSP430F149 + TimerA3

MSP430F149 + TimerA3

2017-07-15

MSP430F149 Clock Out

MSP430F149 + Clock Out

2017-07-15

MSP430F149ADC

MSP430F149 +ADC,的例程,正确无误

2017-07-15

遗传算法工具箱

遗传算法例程

2017-06-15

空空如也

空空如也

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

TA关注的人 TA的粉丝

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