<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[MustImproved的博客]]></title><description><![CDATA[今天也要好好学习鸭！]]></description><link>https://blog.youkuaiyun.com/MustImproved</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; MustImproved]]></copyright><item><title><![CDATA[2021-10-21 Laplace分布和指数分布，相同参数的两个指数分布之差是Laplace分布]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120896913</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120896913</guid><author>MustImproved</author><pubDate>Thu, 21 Oct 2021 23:13:43 +0800</pubDate><description><![CDATA[先给出一些公式：
Laplace分布Lap(b)Lap(b)Lap(b)的probability density function:
f(x;μ,b)=12bexp⁡(−∣x−μ∣b)=12b{exp⁡(−μ−xb),&nbsp;x&lt;μexp⁡(x−μb),&nbsp;x≥μ
f(x;\mu, b) = \frac{1}{2b}\exp(-\frac{|x - \mu|}{b}) = \frac{1}{2b}\left\{
\begin{aligned}
	&amp;\exp(-\frac{\mu-x]]></description><category></category></item><item><title><![CDATA[python subprocessing Popen、run]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120393621</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120393621</guid><author>MustImproved</author><pubDate>Mon, 20 Sep 2021 17:51:08 +0800</pubDate><description><![CDATA[subprocessing Popen、run
Popen是非阻塞的，run是阻塞的。
import subprocess as sp
self.p = sp.Popen(command)
#         self.p = sp.run(command)


]]></description><category></category></item><item><title><![CDATA[2021-09-20 视频流实时请求实时转发]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120393579</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120393579</guid><author>MustImproved</author><pubDate>Mon, 20 Sep 2021 17:50:26 +0800</pubDate><description><![CDATA[视频流
之前的写法是

直接一次性全部转发视频流
把target视频流和视频id的对应关系写到数据库中
但是转发20多个视频流，服务器是不能够承受。
640*480 30fps占了9G左右的内存，但是CPU使用还是太高了【跑18个是极限，10个还是没问题的】

为了稳妥起见，现在考虑的是：

把source视频流、target视频流和视频id的对应关系写到数据库中
每次请求的时候才转发

考虑到后端没法判断前端什么时候不请求视频流了。现在设定的方案是

用全局变量liveList保存正在转发的摄像头id和进]]></description><category></category></item><item><title><![CDATA[深信服2022届秋招C/C++开发笔试题C卷 厨师做饭 机器人大赛]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120373402</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120373402</guid><author>MustImproved</author><pubDate>Sat, 18 Sep 2021 21:04:28 +0800</pubDate><description><![CDATA[32 厨师做饭
一个厨师出售1～6种不同的食物，每种食物都需要使用各自的特殊厨具，厨师的灶台最多只能同时摆放3种厨具，所以厨师决定空间不够时就更换最久没使用过的厨具。每种食物烹饪都需要15分钟，更换一次厨具需要6分钟。请计算按点单顺序完成输入的点单列表所需时间。
输入描述

每行一个数字，1～6代表6种订单，7代表结束

输出描述

一个数字，代表厨师需要的总时间

示例1
输入

2
2
5
6
4
2
4
6
5
2
3
3
3
3
4
6
1
5
1
1
7

输出

354

// 本题为考试多行输]]></description><category></category></item><item><title><![CDATA[nginx安装和配置【支持Vue】]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120365376</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120365376</guid><author>MustImproved</author><pubDate>Sat, 18 Sep 2021 13:23:23 +0800</pubDate><description><![CDATA[nginx安装和配置【支持Vue】
https://www.runoob.com/linux/nginx-install-setup.html
nginx安装


安装编译工具及库文件


安装 PCRE：PCRE 作用是让 Nginx 支持 Rewrite 功能。


安装 Nginx


查看nginx版本
/usr/local/webserver/nginx/sbin/nginx -v



nginx配置
创建 Nginx 运行使用的用户 www：
[root@bogon conf]# /usr/s]]></description><category></category></item><item><title><![CDATA[【入门】ffmpeg、nginx、nginx-http-flv-module转发rtsp流、VLC查看]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120365322</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120365322</guid><author>MustImproved</author><pubDate>Sat, 18 Sep 2021 13:19:39 +0800</pubDate><description><![CDATA[【入门】ffmpeg、nginx、nginx-http-flv-module转发rtsp流、VLC查看
参考：https://blog.youkuaiyun.com/string_kai/article/details/100598268


使用ffmpeg将rtsp转成rtmp


使用nginx中的nginx-http-flv-module 模块：

转发到rtmp的1935端口上
转发到http的80端口上



使用VLC查看


nginx安装 nginx-http-flv-module 模块并添加到ngi]]></description><category></category></item><item><title><![CDATA[文字两边居中和首行缩进]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120266152</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120266152</guid><author>MustImproved</author><pubDate>Mon, 13 Sep 2021 14:12:35 +0800</pubDate><description><![CDATA[文字两边居中
text-align: justify;

文字首行缩进
text-indent: 2em;


]]></description><category></category></item><item><title><![CDATA[百度2022秋招 -研发B卷（9月7日） 后两题解答]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120167325</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120167325</guid><author>MustImproved</author><pubDate>Tue, 07 Sep 2021 21:08:56 +0800</pubDate><description><![CDATA[第二题
A,B是两个自然数，已知A和B的最大公约数可以表示为GCD(A,B)，最小公倍数可以表示为LCM(A,B)，现给出以下限制：
GCD(A,B)=1
LCM(A,B)=A*B
假设一个自然数N是两个自然数A和B的最小公倍数，给出N的值，满足上述条件的数对A和B有多少对？例如，如果N=30，则有四对可能的自然数:(1, 30), (2, 15), (3, 10), (5, 6)。（注意：此处（2，15）和（15，2）视为同一对情况。）
编写一个程序，给定一个自然数N，输出满足上述条件的情况数有多少。
输]]></description><category></category></item><item><title><![CDATA[朴素贝叶斯方法 阅读笔记]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120103277</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120103277</guid><author>MustImproved</author><pubDate>Sat, 04 Sep 2021 17:45:40 +0800</pubDate><description><![CDATA[朴素贝叶斯方法
《统计学习方法 第二版》 李航
输入空间X⊆Rn\mathcal{X} \sube \mathcal{R}^{n}X⊆Rn为nnn维向量的集合，输出空间为类标记集合Y={c1,⋯ ,cK}\mathcal{Y} = \{c_{1}, \cdots, c_{K}\}Y={c1​,⋯,cK​}。输入为特征向量x∈Xx\in\mathcal{X}x∈X，输出为类标记y∈Yy \in \mathcal{Y}y∈Y。XXX是定义在输入空间X\mathcal{X}X上的随机向量，YYY是定义在输出空间Y]]></description><category></category></item><item><title><![CDATA[fisher线性判别分析【有监督的降维算法】阅读笔记]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120077802</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120077802</guid><author>MustImproved</author><pubDate>Fri, 03 Sep 2021 11:17:34 +0800</pubDate><description><![CDATA[fisher线性判别分析【有监督的降维算法】
《模式分类》、《百面机器学习》
也称LDA。
一维判别分析
PCA方法寻找的是用来有效表示的主轴方向，而判别分析方法（discriminant analysis）寻找的是用来有效分类的方法。
可分性分析的目标：通过适当的选择投影直线，找到能够最大限度的区分各类数据点的投影方向。
假设我们有一组nnn个ddd维的样本x⃗1,⋯ ,x⃗n\vec{x}_{1}, \cdots, \vec{x}_{n}x1​,⋯,xn​，它们分属于两个不同的类别，即大小为n1n_{1]]></description><category></category></item><item><title><![CDATA[主成分分析（principal component analysis，PCA） 阅读笔记]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/120074522</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/120074522</guid><author>MustImproved</author><pubDate>Fri, 03 Sep 2021 09:30:45 +0800</pubDate><description><![CDATA[主成分分析（principal component analysis，PCA）
《模式识别》
零维表达–样本均值
有nnn个ddd维向量的样本x1,x2,⋯ ,xnx_{1}, x_{2}, \cdots, x_{n}x1​,x2​,⋯,xn​，如何能够用仅仅一个ddd维向量x0x_{0}x0​来最好的表示nnn个样本，或者更确切地说，希望这个代表向量x0x_{0}x0​
与各个样本xk,k=1,2,⋯ ,nx_{k}, k=1, 2, \cdots, nxk​,k=1,2,⋯,n的距离的平方之和越小越好。]]></description><category></category></item><item><title><![CDATA[JavaScript 实现功能：所有的div都添加事件，点击后输出时间戳；同时对新增的div也要能监听]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119581834</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119581834</guid><author>MustImproved</author><pubDate>Tue, 10 Aug 2021 23:24:49 +0800</pubDate><description><![CDATA[原有的div的监听：使用document.querySelectorAll(‘div’)获取


新增div的监听：使用mutationObserver对document.body进行监听，默认情况下，MutationObserver将观察的范围限定为一个元素以及子节点的变化。可以把观察的范围扩展到这个元素的子树（所有后代节点），这需要在MutationObserverInit对象中将subtree属性设置为true。


&lt;!DOCTYPE html&gt;
&lt;html&gt;
    &..]]></description><category></category></item><item><title><![CDATA[javascript 实现一个简单的EventEmitter]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119581781</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119581781</guid><author>MustImproved</author><pubDate>Tue, 10 Aug 2021 23:22:59 +0800</pubDate><description><![CDATA[实现一个EventEmitter，主要是事件的绑定on和发送emit。
相同的事件名是会被分别触发的。
function EventEmitter() {
    //listeners是一个对象，key对应的是event，value对应的是函数的数组。
    this.listeners = {}
}

EventEmitter.prototype.on = function(event, func) {
    try {
        //function加入数组
        this.lis]]></description><category></category></item><item><title><![CDATA[css引入字体 font-family]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119428726</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119428726</guid><author>MustImproved</author><pubDate>Thu, 05 Aug 2021 22:21:32 +0800</pubDate><description><![CDATA[添加了悠然小楷slideyouran字体，在的style中:
@font-face {
  font-family: slideyouran;
  src: url("~assets/fonts/slideyouran.ttf");
}

使用：
  .proverb-content {
    font-family: slideyouran; 
  }

缺点是字体的ttf文件太大了，有13M。

...]]></description><category></category></item><item><title><![CDATA[css画三角形的两种方法]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119428460</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119428460</guid><author>MustImproved</author><pubDate>Thu, 05 Aug 2021 22:08:15 +0800</pubDate><description><![CDATA[css画三角形的两种方法画三角形1 border2 css的clip-path
画三角形
1 border
&lt;div class="left-down-small" /&gt;
&lt;div class="left-down-large" /&gt;
&lt;style scoped&gt;
.left-down-small {
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent tr]]></description><category></category></item><item><title><![CDATA[《JavaScript高级程序设计》读书笔记 -14.1 DOM 节点层级]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119320470</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119320470</guid><author>MustImproved</author><pubDate>Mon, 02 Aug 2021 10:45:51 +0800</pubDate><description><![CDATA[文档对象模型（DOM，Document Object Model）是HTML和XML文档的编程接口。DOM表示由多层节点构成的文档，通过它开发者可以添加、删除和修改页面的各个部分。脱胎于网景和微软早期的动态HTML(DHTML)，DOM现在是真正跨平台、语言无关的表示和操作网页的方式。
DOM与浏览器中的HTML 网页相关，并且在JavaScript 中提供了DOM API。
14.1 节点层级
任何HTML或XML文档都可以用DOM表示为一个由节点构成的层级结构。节点分很多类型，每种类型对应着文档中不同的]]></description><category></category></item><item><title><![CDATA[《JavaScript高级程序设计》读书笔记 -12.3 - 12.5 navigator对象、screen对象、history对象]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119247945</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119247945</guid><author>MustImproved</author><pubDate>Fri, 30 Jul 2021 15:01:30 +0800</pubDate><description><![CDATA[12.3 navigator 对象
只要浏览器启用JavaScript，navigator 对象就一定存在。navigator对象的属性通常用于确定浏览器的类型。
12.3.1 检查插件
除IE10 及更低版本外的浏览器，都可以通过plugins 数组来确定。这个数组中的每一项都包含如下属性。


name：插件名称。


description：插件介绍。


filename：插件的文件名。


length：由当前插件处理的MIME 类型数量


检测插件就是遍历浏览器中可用的插件，并逐个比较插件的名]]></description><category></category></item><item><title><![CDATA[《JavaScript高级程序设计》读书笔记 -12.2 location 对象]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119247934</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119247934</guid><author>MustImproved</author><pubDate>Fri, 30 Jul 2021 15:00:19 +0800</pubDate><description><![CDATA[12.2 location对象
location是最有用的BOM对象之一，提供了当前矿口中加载文档的信息，以及通常的导航功能。这个对象独特的地方在于，它既是window的属性，也是document的属性。location 对象不仅保存着当前加载文档的信息，也保存着把URL 解析为离散片段后能够通过属性访问的信息。
假设浏览器当前加载的URL 是http://foouser:barpassword@www.wrox.com:80/WileyCDA/?q=javascript#contents，location]]></description><category></category></item><item><title><![CDATA[《JavaScript高级程序设计》读书笔记 -12.1 window对象]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119241636</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119241636</guid><author>MustImproved</author><pubDate>Fri, 30 Jul 2021 11:04:52 +0800</pubDate><description><![CDATA[《JavaScript高级程序设计》读书笔记 -12.1 window对象12.1 window对象12.1.1 Global作用域12.1.2 窗口关系【不是很懂】12.1.3 窗口位置与像素比像素比12.1.4 窗口大小12.1.5 视口位置12.1.6 导航和打开新窗口1 弹出窗口2 安全限制3 弹窗屏蔽程序12.1.7 定时器12.1.8 系统对话框
浏览器对象模型BOM (Browser Object Model)是使用JavaScript开发Web应用程序的核心。
12.1 window对象
B]]></description><category></category></item><item><title><![CDATA[《JavaScript高级程序设计》读书笔记 - 8.3 继承]]></title><link>https://blog.youkuaiyun.com/MustImproved/article/details/119219350</link><guid>https://blog.youkuaiyun.com/MustImproved/article/details/119219350</guid><author>MustImproved</author><pubDate>Thu, 29 Jul 2021 19:56:44 +0800</pubDate><description><![CDATA[8.3 继承
8.3.1 原型链
很多面向对象语言都支持两种继承：接口继承和实现继承。前者只继承方法签名，后者继承实际的方法。接口继承在ECMAScript中是不可能的，因为函数没有签名。实现继承是ECMAScript唯一支持的继承方式，而这主要是通过原型链实现的。
// 继承SuperType
SubType.prototype = new SuperType();

SubType.prototype是SuperType的实例，那么它的原型（即SubType.prototype.__proto__）指向]]></description><category></category></item></channel></rss>