计算机网络(三)——数据链路层
数据链路层
数据链路层基本概念
结点:主机,路由器,由边相连的两个节点叫做相邻节点
链路:网络中两个节点之间的物理通道,传输介质主要有双绞线,光纤,微波,分为i有线链路和无线链路
数据链路:网络中两个节点之间的逻辑通道,控制数据传输协议的硬件+软件加到链路上就构成了数据链路
帧:链路层的协议数据单元,封装网络层数据报
数据链路层负责通过一条链路从一个节点向另一个五莲链路直接相连的相邻节点传送数据报。
功能:
为网络层提供服务。无确认无连接服务(不管有没有收到都不重发,实时通信),有确认无连接服务(没有收到确认信号就重新发送,无线通信),有确认面向连接服务(事先建立好连接,一定要确认信号)
链路管理,连接的建立,维持,释放(用于面向链接服务)
组帧
流量控制(限制发送方)
差错控制(帧错,位错)
封装成帧
在数据的两端添加首部和尾部,构成一个帧。根据首部h额尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部有很多的控制信息,最重要的作用就是帧定界
帧同步:接收方应当从接收到的二进制比特流中区分出帧的起始和终止。
组帧方法:1.字符计数法。2.字符(节)填充法。3.比特流填充 ...
Non-local Neural Networks
Non-local Neural Networks
论文名称:Non-local Neural Networks
作者:Xiaolong Wang, Ross Girshick, Abhinav Gupta, Kaiming He
期刊:CVPR2018
代码:https://github.com/facebookresearch/video-nonlocal-net
原文摘要
Both convolutional and recurrent operations are building blocks that process one local neighborhood at a time. In this paper, we present non-local operations as a generic family of building blocks for capturing long-range depen- dencies. Inspired by the classical non-local means method [4] in computer vis ...
炼丹术的有用工具(不定期更新)
知识补全(不定期更新)
拉普拉斯矩阵(Laplacian Matrix)
对于一张图G=(V,E)G=(V,E)G=(V,E),其拉普拉斯矩阵LLL的定义为:L=D−AL=D-AL=D−A,其中DDD是图的度矩阵,AAA是邻接矩阵。举个例子,如下图:
其邻接矩阵为:
A=(010010101010010100001011110100000100)A = \left(\begin{array}{llllll}
0 & 1 & 0 & 0 & 1 & 0 \\
1 & 0 & 1 & 0 & 1 & 0 \\
0 & 1 & 0 & 1 & 0 & 0 \\
0 & 0 & 1 & 0 & 1 & 1 \\
1 & 1 & 0 & 1 & 0 & 0 \\
0 & 0 & 0 & 1 & 0 & 0
\end{array}\right)
A=⎝⎛01 ...
计算机网络(二)——物理层
计算机网络(二)——物理层
物理层的任务以及特性
物理层主要任务:确定与传输媒体接口有关的一些特性——定义标准
机械特性:定义物理连接的特性,规定物理连接时所采用的规格,接口形状,引线数目,引脚数量和排列情况(网线,插排)
电气特性:规定传输二进制位时,线路上信号的电压范围,阻抗匹配,传输速率和距离限制(有数字,多少V表示0,之类的)
功能特性:指明某条线上出现的某一电平表示何种 意义,接口部件的信号线的用途(高低电平的意义)
规程特性(过程特性):定义各条物理线路的工作规程和时序关系
数据通信的相关术语
通信的目的:传送消息
数据data:传送信息的实体,通常是有意义的符号序列
信号:数据的电气/电磁的表现,是数据在传输过程中的存在形式。
1. 数字信号/离散信号,表示消息的参数的取值是离散的
2. 模拟信号/连续信号,表示消息的参数的取值是连续的
信源:产生和发送数据的源头
信宿:接收数据的终点
信道:信号的传输媒介。一般用来表示向某一个方向传送信息的介质,因此一条通信线路往往包含一条发送信道和一条接收信道。
信道{按传输信号分类{模拟信道(传送模拟信号)数字信道(传送数字信 ...
计算机网络(一)——网络体系结构
网络体系结构
计算机网路概述
概念:是一个将分散的,具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
数据通信:两台计算机之前互发文件
资源共享:同一计算机网络上使用网络中某台计算机的资源(比如打印机)
分布式处理:多台计算机各自承担同一工作任务的不同部分
计算机网络发展
第一阶段
分散指挥系统->ARPAnet(阿帕网)->不同网路互联->internet互联网->tcp/ip协议->Internet因特网
注意大小写不同
网络把许多计算机连接在一起,而互联网则把许多网络连接在一起,因特网是世界上最大的互联网
第二阶段
三级结构:
第三阶段
多层次ISP结构
ISP:因特网服务提供者(因特尔服务提供商)
计算机网络的组成
组成部分:硬件,软件,协议(一系列规则和约定的集合)
工作方式:
边缘部分:服务器,计算机,网络摄像头,端系统(进程之间的通信,通信方式有c/s方式(client/server,请求越多响应越慢)和P2P通信(peer-to-peer对等连接,每一个设备既是服务器也是客户 ...
RefineMask:细粒度实例分割
RefineMask:细粒度实例分割
论文名称:RefineMask: Towards High-Quality Instance Segmentationwith Fine-Grained Features
作者:Gang Zhang, Xin Lu, Jingru Tan, Jianmin Li, Zhaoxiang Zhang, Quanquan Li, Xiaolin Hu
期刊:CVPR2021
代码:https://github.com/zhanggang001/RefineMask
原文摘要
The two-stage methods for instance segmentation, e.g.Mask R-CNN, have achieved excellent performance re-cently. However, the segmented masks are still very coarsedue to the downsampling operations in both the featurepyra ...
线性动态规划
杨老师的照相排列
杨老师的照相排列
解题思路
从题目中我们知道,最多排5排,每排最多30人
要求是第一排从左到右递减,从上到下递减,并且每个人的编号越小,身高越高
假设我们有1,2,33个数字,我们一个一个地排列他们
先排1,显然1只能排在n左上角,即[0,0]的位置,因为如果他排在[0,1]或者[1,0]这些位置那么[0,0]位置放的同学身高应该要比1大,显然这种情况是不可能的。
接着我们排2,他只能排在*的位置,因为如果你放在[0,2],[1,1]的位置就说明[0,1],[1,0]位置的同学身高要比2大,显然这种情况也不可能,因为1的位置定好了,1,2之间没有比2高的了。
[1∗0∗00]\left[
\begin{matrix}
1 & * &0\\
* & 0 \\
0
\end{matrix}
\right]
⎣⎡1∗0∗00⎦⎤
所以开始动归了
令f[a][b][c][d][e]表示第一排有a个同学,第二排有b个同学,第三排有c个同学,第四排有d个同学,第五排有e个同学的情况下,有多少种排列方式
初始条件当然是f[0][0][0][0][0] ...
二分与排序
最佳牛围栏
最佳牛围栏
解题思路
分析题目,首先我们指导题目给我们一串数字,这个数字有n个,并且都是1≤x≤20001\leq x\leq 20001≤x≤2000的,现在要找到一个连续字串,该字串的长度大于等于F,要使得这个连续字串的平均值最大。
这个可以用二分的思路进行寻找,我们的数字最小为1,最大为2000,我们取出边界的中间值,1000,然后使用1000减去这一串数字,使用前缀和sum来存取减去后的数字。我们使用双指针i,j,i从0开始,j从F开始,i,j同时移动,每次确认0~i区间内的最小值minsum ,若满足条件sum[j]-minsum>0则说明这段区间的平均值比当前的二分平均值大,因此就将l变换到mid再次进行二分,否则就将r变换到mid,进行二分。
(ps:我也不知道自己在说什么)
AC代码
1234567891011121314151617181920212223242526272829303132333435363738394041#include <bits/stdc++.h>using namespace std;const int N = ...
前缀和与差分
前缀和与差分
前缀和
一维前缀和
给定一维数组a1,a2,a3,a4,a5,…,前缀和能加速该数组中任意一段的求解
前缀和的存储方式为:f[i] = f[i-1]+a[i],即第i个前缀和数组中的内容为前i个a的总和,因此通常习惯从1开始存储
求取任意一段a数组的总和:假设我们要求解i~j的a数组的总和,我们可以利用前缀和数组进行如下计算:sum = f[j]-f[i-1]
二维前缀和
给定一个二维数组f[i][j]
[a11a12a13a21a22a23a31a32a33]\left[
\begin{matrix}
a_{11}&a_{12}&a_{13}\\
a_{21}&a_{22}&a_{23}\\
a_{31}&a_{32}&a_{33}\\
\end{matrix}
\right]
⎣⎡a11a21a31a12a22a32a13a23a33⎦⎤
前缀和f[i][j](与之前单个存储方式共用一个矩阵)的意义为,右下角为i,j的左上角为1,1的矩形的数字之和
对于二维矩阵的前缀和求解通常使用动态规划+容 ...
十一届蓝桥杯国赛
第十一届蓝桥杯大赛软件类决赛
题目在这里
部分自己写的,大部分学习好友therainisme
试题 A: 美丽的 2
1234567891011# 暴力求解count = 0for i in range(1, 2021): temp = i while temp != 0: if temp % 10 == 2: count += 1 break # 记得这里要取整 temp = int(temp/10)print(count)
答案:563
试题 B: 扩散
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970#include <bits/stdc++.h>// 这题宽搜using namespace std;// 获取数对时偷懒#define x first#def ...