关于函数内积的思考

定义内积\点积的核心目的在于描述广义的角度(或称相关性)

1.起源于点积

u⃗⋅v⃗\vec{u} \cdot \vec{v} u⋅v

​ 点积是人为定义的一种运算方式,描述了向量的长度角度,其有两种等价的定义方式,代数定义和几何定义。


代数定义

​ 在线性空间中引入笛卡尔坐标系,坐标和向量一一对应,此时坐标等价于向量,通过对向量坐标的运算可获得点积结果。

二维向量
u⃗=[u1u2],v⃗=[v1v2]\vec{u} =\begin{bmatrix}u_{1} \\u_{2} \end{bmatrix}, \quad \vec{v} =\begin{bmatrix}v_{1} \\v_{2} \end{bmatrix} u=[u1​u2​​],v=[v1​v2​​]

u⃗⋅v⃗=[u1u2][v1v2]=u1v1+u2v2\vec{u} \cdot \vec{v} = \begin{bmatrix}u_{1} &u_{2} \end{bmatrix}\begin{bmatrix}v_{1} \\v_{2} \end{bmatrix} = u_{1}v_{1}+u_{2}v_{2} u⋅v=[u1​​u2​​][v1​v2​​]=u1​v1​+u2​v2​

n维向量:
u⃗=[u1u2⋮un],v⃗=[v1v2⋮vn]\vec{u} = \begin{bmatrix}u_{1} \\u_{2} \\\vdots \\u_{n} \end{bmatrix}, \quad \vec{v} = \begin{bmatrix}v_{1} \\v_{2} \\\vdots \\v_{n} \end{bmatrix} u=⎣⎢⎢⎢⎡​u1​u2​⋮un​​⎦⎥⎥⎥⎤​,v=⎣⎢⎢⎢⎡​v1​v2​⋮vn​​⎦⎥⎥⎥⎤​

u⃗⋅v⃗=∑i=1nuivi=u1v1+u2v2+⋯+unvn\vec{u} \cdot \vec{v} = \sum_{i=1}^{n} u_{i} v_{i} = u_{1} v_{1} +u_{2} v_{2} +\dots+ u_{n} v_{n} u⋅v=i=1∑n​ui​vi​=u1​v1​+u2​v2​+⋯+un​vn​


几何定义
​ 通过定义向量的长度角度去描述向量。
u⃗⋅v⃗=∣u⃗∣∣v⃗∣cos⁡θ\vec{u} \cdot \vec{v} =\left | \vec{u} \right | \left | \vec{v} \right |\cos \theta u⋅v=∣u∣∣v∣cosθ
定义向量长度的计算方式:
二维向量:∣u⃗∣=u12+u22=(∑i=12ui2)12n维向量:∣u⃗∣=u12+u22+⋯+un2=(∑i=1nui2)12\begin{aligned} &二维向量:\left | \vec{u} \right | =\sqrt{u_{1}^{2} + u_{2}^{2}} = (\sum_{i=1}^{2} u_{i}^{2})^{\frac{1}{2} } \\&n维向量:\left | \vec{u} \right | =\sqrt{u_{1}^{2} + u_{2}^{2}+\cdots + u_{n}^{2}} = (\sum_{i=1}^{n} u_{i}^{2})^{\frac{1}{2} } \end{aligned} ​二维向量:∣u∣=u12​+u22​​=(i=1∑2​ui2​)21​n维向量:∣u∣=u12​+u22​+⋯+un2​​=(i=1∑n​ui2​)21​​
(注:我们熟悉的欧几里得空间下的距离(长度)公式,其实是由点积运算给出的)
∣u⃗∣=u12+u22=(u⃗⋅u⃗)12\left | \vec{u} \right | =\sqrt{u_{1}^{2} + u_{2}^{2}} =(\vec{u} \cdot \vec{u})^{\frac{1}{2} } ∣u∣=u12​+u22​​=(u⋅u)21​

有一个普遍的误区,认为点积结果是投影、分量,严格的讲,不正确,只有当向量与单位向量做点积时,结果的数值才与投影、分量相等,但点积结果同时包含了两者的长度、夹角信息,所以不可能等价于一个数字。

并且投影与分量也是不同的概念

投影以整个空间的单位长度为单位长度,分量以被投影向量的长度为单位长度

投影=点积结果被投影向量长度投影=\frac{点积结果}{被投影向量长度}投影=被投影向量长度点积结果​
u⃗在v⃗方向上的投影=∣u⃗∣cos⁡θ=u⃗⋅v⃗∣v⃗∣\vec{u}在\vec{v} 方向上的投影 =\left | \vec{u} \right | \cos \theta =\frac{\vec{u} \cdot \vec{v} }{\left | \vec{v} \right |} u在v方向上的投影=∣u∣cosθ=∣v∣u⋅v​
分量=点积结果被投影向量长度2=点积结果被投影向量与自己的点积分量=\frac{点积结果}{被投影向量长度 ^2}=\frac{点积结果}{被投影向量与自己的点积}分量=被投影向量长度2点积结果​=被投影向量与自己的点积点积结果​
u⃗在v⃗上的分量=u⃗⋅v⃗∣v⃗∣∣v⃗∣=u⃗⋅v⃗v⃗⋅v⃗\begin{aligned} \vec{u}在\vec{v} 上的分量 &=\frac{\vec{u} \cdot \vec{v} }{\left | \vec{v} \right |\left | \vec{v} \right |} \\ &=\frac{\vec{u} \cdot \vec{v} }{\vec{v} \cdot \vec{v} } \end{aligned} u在v上的分量​=∣v∣∣v∣u⋅v​=v⋅vu⋅v​​


2.点积的意义

因为代数定义仅仅运算数字,难以进行分析,所以我们从等价的几何定义分析其意义
u⃗⋅v⃗=∣u⃗∣∣v⃗∣cos⁡θ\vec{u} \cdot \vec{v} =\left | \vec{u} \right | \left | \vec{v} \right |\cos \theta u⋅v=∣u∣∣v∣cosθ
由几何定义的表达式可知,点积的结果中包含了两个向量的长度和夹角信息
长度信息:∣u⃗∣∣v⃗∣夹角信息:cos⁡θ\begin{aligned} &长度信息: \left | \vec{u} \right | \left | \vec{v} \right | \\&夹角信息:\cos \theta \end{aligned} ​长度信息:∣u∣∣v∣夹角信息:cosθ​
其中的夹角信息很有价值,它反映了向量间的相关性(或者说接近程度),如果两个向量的夹角越小,说明形态很接近,相关性很强。(正是这条性质,使得点积/内积运算拥有了很大的威力)

不过三角函数已经可以描述角度了,为什么还要引入点积运算去描述角度的?

从几何意义的点积结果看,描述角度的是三角函数,确实如此,但问题在于,有可能三角函数不容易计算,甚至在高维空间、其他空间中,不一定存在这种可以直接计算出角度信息的三角函数运算法则,所以更广泛描述角度的方式是,先通过代数定义计算出点积结果,再计算长度信息,然后从点积结果中过滤掉长度信息,剩下的就是抽象的广义角度。

所以引入点积运算的目的是同时定义出长度和角度(但这导致点积运算不纯粹,因为点积结果融和了长度、角度信息)


3.描述向量间的相关性

必须注意的是,点积的结果融和了长度信息和夹角信息,因为相关性和向量的长度无关,所以当我们只关心相关性时,长度信息就变成了干扰,所以利用点积衡量相关性前,应该对向量做单位化(归一化、标准化)处理,剔除长度信息,只保留夹角信息。

1.不剔除长度信息,无法准确描述相关性:
a⃗=[11],b⃗=[01]\vec{a} =\begin{bmatrix}1 \\1 \end{bmatrix}, \quad \vec{b} =\begin{bmatrix}0 \\1 \end{bmatrix} a=[11​],b=[01​]

a⃗⋅b⃗=[11][01]=12a⃗⋅b⃗=[22][01]=2\begin{aligned} &\vec{a} \cdot \vec{b}=\begin{bmatrix}1 &1 \end{bmatrix}\begin{bmatrix}0 \\1 \end{bmatrix}=1 \\ &2\vec{a} \cdot \vec{b}=\begin{bmatrix}2 &2 \end{bmatrix}\begin{bmatrix}0 \\1 \end{bmatrix}=2 \end{aligned} ​a⋅b=[1​1​][01​]=12a⋅b=[2​2​][01​]=2​

2.剔除长度信息:单位化处理,将所有向量的长度(模长)均变换到1
a′⃗=a⃗∥a⃗∥=[11]12+12=[2222]a′′⃗=2a⃗∥2a⃗∥=[22]22+22=[2222]b′⃗=b⃗∥b⃗∥=[01]02+12=[01]\begin{aligned} &\vec{{a}' } = \frac{\vec{a} }{\left \| \vec{a} \right \| } = \frac{\begin{bmatrix}1 &1 \end{bmatrix}}{\sqrt{1^{2}+1^{2} } } =\begin{bmatrix}\frac{\sqrt{2} }{2} &\frac{\sqrt{2} }{2} \end{bmatrix} \\ &\vec{{a}''} = \frac{2\vec{a} }{\left \| 2\vec{a} \right \| } = \frac{\begin{bmatrix}2 &2 \end{bmatrix}}{\sqrt{2^{2}+2^{2} } } =\begin{bmatrix}\frac{\sqrt{2} }{2} &\frac{\sqrt{2} }{2} \end{bmatrix} \\ &\vec{{b}' } = \frac{\vec{b} }{\left \| \vec{b} \right \| } = \frac{\begin{bmatrix}0 &1 \end{bmatrix}}{\sqrt{0^{2}+1^{2} } } =\begin{bmatrix}0 &1 \end{bmatrix} \end{aligned} ​a′=∥a∥a​=12+12​[1​1​]​=[22​​​22​​​]a′′=∥2a∥2a​=22+22​[2​2​]​=[22​​​22​​​]b′=∥∥∥​b∥∥∥​b​=02+12​[0​1​]​=[0​1​]​

a⃗′⋅b⃗′=[2222][01]=22a⃗′′⋅b⃗′=[2222][01]=22\begin{aligned} &{\vec{a}}' \cdot {\vec{b}}' =\begin{bmatrix}\frac{\sqrt{2} }{2} &\frac{\sqrt{2} }{2} \end{bmatrix}\begin{bmatrix}0 \\1 \end{bmatrix}=\frac{\sqrt{2} }{2} \\&{\vec{a}}'' \cdot {\vec{b}}' =\begin{bmatrix}\frac{\sqrt{2} }{2} &\frac{\sqrt{2} }{2} \end{bmatrix}\begin{bmatrix}0 \\1 \end{bmatrix}=\frac{\sqrt{2} }{2} \end{aligned} ​a′⋅b′=[22​​​22​​​][01​]=22​​a′′⋅b′=[22​​​22​​​][01​]=22​​​


4.函数内积

定义函数内积运算(实数域下)
⟨f(x),g(x)⟩=∫abf(x)g(x)dx\left \langle f(x),g(x) \right \rangle =\int_{a}^{b} f(x)g(x)dx ⟨f(x),g(x)⟩=∫ab​f(x)g(x)dx
从n维向量的点积理解函数内积

在f(x)\ f(x) f(x)和g(x)\ g(x) g(x)函数曲线上选部分点作为n维向量
f⃗=[f1f2⋯fn]g⃗=[g1g2⋯gn]\begin{aligned} \vec{f} = \begin{bmatrix}f_{1} &f_{2} &\cdots &f_{n} \end{bmatrix} \\ \vec{g} = \begin{bmatrix}g_{1} &g_{2} &\cdots &g_{n} \end{bmatrix} \end{aligned} f​=[f1​​f2​​⋯​fn​​]g​=[g1​​g2​​⋯​gn​​]​
对n维向量做点积,得到点积结果
f⃗⋅g⃗=∑i=1nfigi(1)\vec{f} \cdot \vec{g} =\sum_{i=1}^{n} f_{i}g_{i} \quad (1) f​⋅g​=i=1∑n​fi​gi​(1)
当n→∞\ n\to\infty n→∞时,就是“函数的点积”
lim⁡n→∞∑i=1nfigi(2)\lim_{n \to \infty} \sum_{i=1}^{n} f_{i}g_{i}\quad (2) n→∞lim​i=1∑n​fi​gi​(2)
但此数列求和后发散,发散的数列没法计算,所以人为的对(1)式乘上 △x\triangle x△x,转为求黎曼和,也就是黎曼积分。(乘△x\triangle x△x的原因分析见后文)
(∑i=1nfigi)△x(3)(\sum_{i=1}^{n} f_{i}g_{i})\bigtriangleup x \quad (3) (i=1∑n​fi​gi​)△x(3)
对(3)式的n\ n n求极限:
lim⁡n→∞(∑i=1nfigi)△x=∫abf(x)g(x)dx(4)\lim_{n \to \infty} (\sum_{i=1}^{n} f_{i}g_{i})\bigtriangleup x =\int_{a}^{b} f(x)g(x)dx \quad (4) n→∞lim​(i=1∑n​fi​gi​)△x=∫ab​f(x)g(x)dx(4)
将(4)中右式的积分定义为内积的代数计算方式,并采用尖括号+逗号的书写方式代表这种运算:
⟨f(x),g(x)⟩=∫abf(x)g(x)dx(5)\left \langle f(x),g(x) \right \rangle =\int_{a}^{b} f(x)g(x)dx \quad (5) ⟨f(x),g(x)⟩=∫ab​f(x)g(x)dx(5)


分析乘 △x\triangle x△x的根本原因

(2)式到(3)式可能会难以理解,因为按照n维向量的推广,乘积+求和就已经完成推广了,为什么要额外引入一个△x\triangle x△x,如果直接凭空引入一个量,那这推广的内积真的是内积吗,它还具备点积的描述长度和角度的能力吗?

答案是肯定的

首先,引入△x\triangle x△x,一定程度上是因为(2)式发散不能用,取平均,求黎曼积分之后才变得可计算。

最重要的,其实是我们的目的,如果目的达到了,采用何种形式都是可以的。

当初定义点积运算的目的是为了描述长度、角度,所以如果由(5)式定义出的内积运算具备了同时描述长度和角度的能力,那它就是正确的

我们暂且认为(5)式是成立的,思考其长度定义

点积运算带来的长度定义:
∣u⃗∣=(u⃗⋅u⃗)12=u12+u22\left | \vec{u} \right | =(\vec{u} \cdot \vec{u})^{\frac{1}{2} } =\sqrt{u_{1}^{2} + u_{2}^{2}} ∣u∣=(u⋅u)21​=u12​+u22​​
内积运算带来的长度定义:(长度被推广为范数,原有的两根竖线,变为四根)
∥f(x)∥=⟨f(x),f(x)⟩12=∫abf(x)f(x)dx\left \| f(x) \right \| = \left \langle f(x),f(x) \right \rangle ^{\frac{1}{2} } =\sqrt{\int_{a}^{b} f(x)f(x)dx} ∥f(x)∥=⟨f(x),f(x)⟩21​=∫ab​f(x)f(x)dx​
此处推广的长度定义是符合认知的,两者结构一模一样

按照前文点积运算描述角度方式,只需得知点积结果、长度信息,即可反推出角度信息,而由(5)式定义的内积运算,有收敛的运算结果,也定义了长度的计算方式,自然可以反推出广义的角度信息,所以目的达到了,(5)式具备同时描述长度和角度的能力,它确实站得住脚。

我们人为乘上了 △x\triangle x△x再取极限(相当于乘了一个常数),看似改变了推广的内积运算结构,会影响长度信息(不影响角度信息,因为角度代表相关性,而相关性和长度、大小无关),实际不然,因为长度不是绝对的,不同空间下的长度是不同的,这是一个相对量,一个按照内积运算所定义出来的量。所以当内积运算法则改变时,长度的定义也发生了变化

乘上 △x\triangle x△x再取极限时,欧几里得空间长度由点积运算定义,推广点积为内积运算后,欧几里得空间演变为内积空间,其长度由内积运算定义,原有的点积运算不再适用


5.由内积看傅里叶系数

以一个部分正弦展开的函数f(x)f(x)f(x)为例,容易理解,f(x)f(x)f(x)是由基函数sinnπlsin\frac{n\pi }{l}sinlnπ​的线性叠加组成
f(x)=∑n=1∞Ansinnπlxf(x)=\sum_{n=1}^{\infty } A_{n} sin\frac{n\pi }{l} x f(x)=n=1∑∞​An​sinlnπ​x
其傅里叶系数An\ A_{n} An​为:
An=2l∫0lf(x)sinnπlx⋅dx(6)A_{n}=\frac{2}{l}\int_{0}^{l} f(x)sin\frac{n\pi }{l} x\cdot dx\quad (6) An​=l2​∫0l​f(x)sinlnπ​x⋅dx(6)
和向量的分解完全一样,其实An\ A_{n} An​就是f(x)f(x)f(x)在各个基函数sinnπlsin\frac{n\pi }{l}sinlnπ​上的分量(分量=内积结果基函数的长度2=内积结果基函数与自己的内积)(分量=\frac{内积结果}{基函数的长度^{2}}=\frac{内积结果}{基函数与自己的内积})(分量=基函数的长度2内积结果​=基函数与自己的内积内积结果​)
An=⟨f(x),sinnπlx⟩∥sinnπlx,sinnπlx∥2=⟨f(x),sinnπlx⟩⟨sinnπlx,sinnπlx⟩\begin{aligned} A_{n} &= \frac{\left \langle f(x),sin\frac{n\pi}{l}x \right \rangle } {\left \| sin\frac{n\pi}{l}x,sin\frac{n\pi}{l}x \right \| ^2} \\ &=\frac{\left \langle f(x),sin\frac{n\pi}{l}x \right \rangle } {\left \langle sin\frac{n\pi}{l}x,sin\frac{n\pi}{l}x \right \rangle } \end{aligned} An​​=∥∥​sinlnπ​x,sinlnπ​x∥∥​2⟨f(x),sinlnπ​x⟩​=⟨sinlnπ​x,sinlnπ​x⟩⟨f(x),sinlnπ​x⟩​​


推导:

将An\ A_{n} An​改写为:
An=∫0lf(x)sinnπlx⋅dxl2(7)A_{n}=\frac{\int_{0}^{l} f(x)sin\frac{n\pi }{l} x\cdot dx }{\frac{l}{2}}\quad (7) An​=2l​∫0l​f(x)sinlnπ​x⋅dx​(7)
其中2l\frac{2}{l}l2​的由来:
l2=∫0lsinnπlx⋅sinnπlx⋅dx=∥sinnπlx,sinnπlx∥2=⟨sinnπlx,sinnπlx⟩(8)\begin{aligned} \frac{l}{2} &=\int_{0}^{l} sin\frac{n\pi }{l}x \cdot sin\frac{n\pi }{l}x\cdot dx \\ &=\left \| sin\frac{n\pi }{l}x,sin\frac{n\pi }{l}x \right \| ^2 \\ &=\left \langle sin\frac{n\pi }{l}x,sin\frac{n\pi }{l}x \right \rangle \quad (8) \end{aligned} 2l​​=∫0l​sinlnπ​x⋅sinlnπ​x⋅dx=∥∥∥​sinlnπ​x,sinlnπ​x∥∥∥​2=⟨sinlnπ​x,sinlnπ​x⟩(8)​
所以2l\frac{2}{l}l2​就是基函数sinnπlxsin\frac{n\pi }{l}xsinlnπ​x与自己的内积结果、长度的平方

分母:
∫0lf(x)sinnπlx⋅dx=⟨f(x),sinnπlx⟩(9)\int_{0}^{l} f(x)sin\frac{n\pi }{l} x\cdot dx =\left \langle f(x),sin\frac{n\pi }{l} x \right \rangle \quad (9) ∫0l​f(x)sinlnπ​x⋅dx=⟨f(x),sinlnπ​x⟩(9)
将(8)、(9)式代入(7)式中即可得到(6)式


6.由内积思考伽辽金法

加权余量法是建立在变分原理、求解微分方程近似解的一种方法。其核心部分,是令余量与权函数的内积为0。

其中伽辽金方法的精度最高,因为直接选取了构成近似函数的基函数作为权函数,在思维层面容易理解为何伽辽金方法的精度最高。

因为如果近似函数与构成它的基函数内积为0,说明近似函数在基函数上的分量为0,而近似函数本身就只是由基函数构成的,如果在各个基函数上分量为0,则只能可是其本身为0,才满足。


7.其他概念

空间=集合+结构

集合可以是数,如常见的实数域、复数域

结构指最底层的运算法则,如加减乘除

几种运算法则

加法运算:加减法

数乘运算:乘除法

范数运算:有多种定义,但本质是定义了距离(或称长度、大小)

内积运算:有多种定义,但本质是定义了角度,并且恰好自带了一种距离的定义

距离((或称长度、大小)是相对的概念,所以存在很多种范数运算

角度的本质是相关性(或称相似性、接近程度)

几种空间结构

线性空间结构(简称线性结构) = 加法 + 数乘

内积空间结构 = 线性结构 + 内积运算

在内积空间中我们可以讨论长度、角度

深入思考内积运算,再看傅里叶系数、伽辽金法本质相关推荐

  1. 数据结构:设线性表中每个元素有两个数据项k1和k2,现对线性表按一下规则进行排序:先看数据项k1,k1值小的元素在前,大的在后;在k1值相同的情况下,再看k2,k2值小的在前,大的在后。满足这种要求的

    题目: 设线性表中每个元素有两个数据项k1和k2,现对线性表按一下规则进行排序:先看数据项k1,k1值小的元素在前,大的在后:在k1值相同的情况下,再看k2,k2值小的在前,大的在后.满足这种要求的排 ...

  2. 有什么值得一看再看的书吗?

    1.<自卑与超越> 适合谁:  成人眼中的教科书,青少年的成长读本 主要内容: 这是一本探讨人生意义的心理学书籍,直面人类心理的本质--自卑感,追溯自卑感形成的起源与 对个人的影响,帮助人 ...

  3. 再看《肖申克的救赎》

    记得第一次看<肖申克的救赎>好像是大一或大二的时候,那时候第一次看的感觉就是"情节精彩,出乎意料".除此之外好像就没有别的感觉了. 前几天在网站上看到这部片在IMDB的 ...

  4. qtdesigner怎么实现菜单栏跳转_3种公众号菜单栏设置类型,手把手教你做,不会的话那就再看一遍...

    常见的菜单栏设置怎么去设置呢?在我们的公众号左侧的菜单栏中,你可以找到我们的自定义菜单,这个功能,点击进去之后,你就可以看到菜单的内容,它可以有三种类型可选:一种叫发送消息,一种叫跳转网页,一种叫跳转 ...

  5. 长得类似铁甲小宝的机器人_铁甲小宝:小时候只顾看机器人忽略重点,长大后再看:是我太天真...

    铁甲小宝:小时候只顾看机器人忽略重点,长大后再看:是我太天真 铁甲小宝相亲大家都是看过的,作为早期的三大人特摄之一,铁甲小宝针对的完全就是儿童,小时候我们也是很喜欢这部作品,只是现在在荧幕上已经很难看 ...

  6. OpenCV学习笔记(四十一)——再看基础数据结构core OpenCV学习笔记(四十二)——Mat数据操作之普通青年、文艺青年、暴力青年 OpenCV学习笔记(四十三)——存取像素值操作汇总co

    OpenCV学习笔记(四十一)--再看基础数据结构core 记得我在OpenCV学习笔记(四)--新版本的数据结构core里面讲过新版本的数据结构了,可是我再看这部分的时候,我发现我当时实在是看得太马 ...

  7. android 智能指针的学习先看邓凡平的书扫盲 再看前面两片博客提升

    android 智能指针的学习先看邓凡平的书扫盲 再看前面两片博客提升 转载于:https://www.cnblogs.com/jeanschen/p/3507512.html

  8. 再看数据库——(2)视图

    概念 *是从用户使用数据库的观点来说的. *从一个或多个表(视图)中导出来的 *一个虚表,或者说查询表 为什么要用视图呢? 一是简单,看到的就是需要的.视图不仅可以简化用户对数据的理解,也可以简化他们 ...

  9. 以前看书时记得一些笔记(二),很早了,现在再看都有些看不懂了

    MFC学习: 1.CObject类为MFC总类,该类下面有一个重要的类CCmdTarget.而CCmdTarget类下面又有四个重要的继承类,分别为:CWinThread.CDocument.CDoc ...

  10. 再看结构体对齐与小端联合问题

    再看结构体对齐与小端联合问题 @(组成原理) 先再次回看一道题目的分析. (2012.15)某计算机存储器按字节编址,采用小端方式存放数据.假定编译器规定int型和short型长度分别为32位和16位 ...

最新文章

  1. 3.6 Git 分支 - 分支的衍合
  2. GDCM:gdcm::Series的测试程序
  3. 大学生助学贷款如何还利息(本金+利息都可以)
  4. 四、ajax请求超时与网络异常处理
  5. 逆向调试完成端口回包实践总结
  6. 埋点测试-移动端/PC端
  7. 测试telnet安装成功 以及如何进入和退出telnet命令模式
  8. 关于线段树or 树状树状 在二维平面搞事情!Orz
  9. python文件都是脚本吗_.py文件是python脚本吗
  10. 蓝桥杯 算法训练 矩阵乘法
  11. BoundsChecker使用说明
  12. 微支付几个参数的获得
  13. 【移动网络】5GC:5G核心网络的移动性管理(Mobility Management)
  14. 讲课大师 把微信消息同步转发到企业微信中
  15. 计算机专业就业方向 【转】
  16. list中抽出某一个字段的值_Java 将List中所有item中的某一个字段值提出来生成一个新的List...
  17. kali源代码简单说明
  18. 2021-03-22 什么是SFP端口
  19. 如何实现汇川PLC和工业机器人的协议解析与数据采集?
  20. 跟风 —— 由技术跟风所想到的

热门文章

  1. 人工智能导论测试题——第3章自动推理与专家系统
  2. nodejs下载图片
  3. c语言mergesort 参数,求教关于归并排序MergeSort()的问题
  4. 国密算法使用-SM3
  5. windows操作系统定时关机和取消定时关机命令
  6. 基于SNMP网络管理系统的实现
  7. vcpkg如何全面卸载和重新安装包
  8. kettle基础使用教程
  9. 远程读取mysql_远程获取数据库和文件的方法
  10. OD教程(汇编基础)