DB Takeaway Notes | 易错点
关系代数
某属性不等于什么在关系代数里面要用减法去做,因为该属性可能不是主键,所以可能有多条记录
注意所有和一个
“找出在南京所有公司工作过的员工”应该使用除法,先筛选出所有的在南京的公司,然后投影出公司名称,在员工表里面投影到只剩下姓名和公司,再做除法
SQL
如果要求不重复,记得使用 SELECT DISTINCT
注意字符串比较是 name LIKE '胡%'
字符串是单引号
在SQL的WHERE子句里面如果希望比较当前某个值和子查询返回某个值,记得使用 ALL
规范化理论
主属性集是所有候选关键字的属性集的并集
Pumping Lemma | 各种泵引理
正则语言的泵引理对于一个正则语言 存在一个整数 使得对于 中的每一个长度大于等于 的字符串 都可以写作 满足以下性质:
上下文无关语言的泵引理对于每一个上下文无关语言 都存在一个整数 使得 满足:
P and NP,Decidable and RE
递归语言和递归可枚举语言递归语言(decidable)要求存在一个满足如下要求的图灵机:
Halt on accept
Halt on reject但是递归可枚举语言(RE:Recursive enumerable)要求存在的图灵机只需要满足:
Halt on accept换言之,对于 True RE可能存在某个句子,你不知道这个句子在图灵机上会不会停机
正规定义:
递归可枚举语言是指由图灵机定义的语言(不管是通过终止状态接受还是通过停机接受)
递归语言:
定义算法是一个图灵机,该图灵机通过终止状态接受,并且无论接受与否,它都注定会停机
定义递归语言是由 定义的,且 是一个算法
可判定性对于图灵可判定和图灵可识别,这两个概念如下:
如果一个语言是 递归语言 那么这个语言是 图灵可判定语言
如果一个语言是 递归可枚举语言 那么这个语言是 图灵可识别语言
非递归可枚举语言这种类型的语言是存在的,因为RE的集合是可数集合,但是所有语言的集合的势势不可数的
P 和 NPP 是指存在一个单带、确定性的图灵机,能够在多项式时间内判定
NP是指,存在一个非确定性图灵机,能够在多项 ...
check7
Solo portion测试在wsl下非常顺利,下面是开始和关闭的截图
开始新连接截图:
互相发送截图
关闭截图
传输文件测试整个流程非常顺利,没有修改任何代码,直接成功
Group portion我选择和沈硕(221502023)互发这里首先我作为server尝试给对方发文件,下面是对应的截图:
我的截图
对方的截图然后我作为client尝试进行了聊天,非常成功,下面是截图
check6
Program Structure and Design这次实验比较简单,主要是需要设计一个高效的路由表,这里我选择设计的路由表类型是:
1std::array<std::map<uint32_t, std::pair<std::optional<Address>, size_t>>, 33> _routing_table {};
这个结构的含义如下:
第一层Array用于表示前缀的长度,这样方便从长到短匹配
第二层里面是一个map,记录了从ip前缀到下一跳地址以及出口号的映射关系
最后存的是一个pair,记录了下一跳、出口地址
然后我封装了一个最长前缀匹配的算法:
12345678910111213141516std::pair<std::optional<Address>, size_t> Router::get_address( const uint32_t ip ) const{ for ( int idx = 32; idx >= 0; --idx ) { uint32_t mask; ...
check5
Program Structure and Design计时器结构首先这里也是需要一个计时器结构的,由于这里还是通过 tick 方法传入距离上次调用过去了多长时间,和之前的 check3 类似,所以我也采用了相似的做法,写了一个 timer 来统一管理计时,由于这里的request和record有两种不同的过期时间,所以我选择用继承的方式来实现两种不同的timer
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758class BasicTimer{protected: bool is_running_; uint64_t time_passed_;public: BasicTimer& operator=( const BasicTimer& tm ) = default; BasicTimer() : is_running_( false ), time_passed_( 0 ) {}; void ...
DDPM | Diffusion基础
论文原文论文原文是20年的这一篇 Denoising diffusion probabilistic models 论文的地址: Arxiv.org
题外话,现在网上的教程都是一个抄一个,有个公式打错了结果我发现网上大部分教程都打错了 :-(
模型的整体思路整体的流程润下图所示:首先是从训练集开始不断地往上面加高斯噪声,最后直到达到一个纯随机的分布,再训练这个去除噪声的过程,从任意一个纯随机分布开始,一步步地去除噪声,直到还原出最后的图片
加噪声的过程引理考虑原输入和一个高斯噪声的加权平均的过程,假设第 步时,原输入为 加上了一个为 的高斯噪声,对应的权重为 和 ,其中的 由于独立的高斯分布具有可加性,即满足 那么考虑再往前一步的噪声 有:这其中的
考虑权重 的一个前缀累乘,记 有注意到这里的 的符号其实不重要,都是从 中采样的随机高斯噪声,所以我们可以发现第 步的分布本质上只由一系列的权重决定,这个式子更重要的是可以推导出下面的式子:上面的式子
加噪声的过程在论文中,加噪的过程被描述为:
如果你对这个式子里面的正态分布为什么有三个参数感到迷惑, ...
Network Layer | 网络层
网络层的组成——两个平面网络层主要由 数据平面 和 控制平面 两个部分组成的:
数据平面 :局部的性质,是指每一个交换机内部决定从入口的每一个包应该转发到哪一个出口上
控制平面 :整个网络规模的逻辑概念,决定每一个路由器应当如何导航
两种平面的交互
传统方法:在每一个路由器里面各自实现
software-defined nerworking(SDN) :在远程有一个服务器来决定如何转发这两种方法的区别如下图:
网络的服务模型服务模型表示了这个网络的组成方式提供了哪些保证,下面列出了一些服务模型提供的保证:
Best Effort Model
机制非常简单,便于广泛使用
对于绝大多数时间和绝大多数任务提供足够的带宽,包括即时通话和视频传输任务
可以分布式部署,易于复制,可以利用数据中心等技术,从多个位置提供服务
弹性的拥塞控制
路由器模型的综述路由器的一般模型如下:路由器会通过读数据头的信息来决定转发给哪个出口
最长前缀匹配路由器通过匹配最长前缀的方法来决定数据包应该转发到哪一个口里面,例如下图所示的路由表:当一个数据包到达的时候,路由器会依次尝试匹配最长的可被匹配的前缀,并且 ...
3D基础-坐标系
齐次坐标系参考文章:知乎
在二位笛卡尔坐标系中,一个点可以被表示为 而一条直线就是 但是此时有个问题,无法刻画两条平行线在无穷远处相交的情况,即对于透视空间无法处理,此时就需要引入齐次坐标系,在齐次坐标系中一个点被表示为 例如一个点 在齐次坐标系下的表示就是 而一旦这个点被平移到无穷远处那么在齐次坐标系下的表示就是 了。
齐次坐标系与笛卡尔坐标系的转换如下:
影像坐标系参考文章:CSDN
在影像坐标系下面,有两套体系,一套是以像素为单位的 坐标系,另一套是以物理尺寸为单位 坐标系,如果我们知道了像主点的位置 那么这两个坐标系的转换关系如下:
这里的像主点就是摄影中心在图像上的投影点
相机坐标系(Camera)三维相机坐标系和二位影像坐标系之间的对应关系是,相机坐标系的原点在摄影中心,相机坐标系的 轴和 轴分别与影像坐标系的 轴和 轴平行,而 轴垂直于像平面且朝向像平面,根据定义可以得知,此时的影像坐标系下面的所有点的 值都等于焦距 那么在影像 坐标系下面的点 在相机 坐标系下的坐标就是
根据中心投影的特征,假设像素点 是物理点的投影,那么 ...
check4
TCP链接测试这个部分非常顺利,可能是由于前面的部分代码写的没有问题,在更换至虚拟机之后一次就成功了,下面是运行测试成功的截图![[0ddb6028c9158a2edf475e82409c5982_720.png]]
Ping结果分析思路这个部分由于校园网太好了,我连续 ping 了四万个包都没有丢包,所以我委托我的朋友在他的服务器上面挂了一个ping的进程来获取这个文件。建议提供一个标准的分析文件,否则遇到南大校园网根本没有办法做
这里我写了一段python代码来分析整个ping的文件:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 ...
