计算机网络课后作业2023秋
计算机网络第三版吴功宜版 课后作业
- 第一章作业
- 三、计算与问答
- 3.7
- 3.8
- 第二章作业
- 三、计算与问答
- 3.2
- 3.5
- 3.6
- 第三章作业
- 三、计算与问答
- 3.1
- 3.5
- 3.7
- 3.8
- 第四章作业
- 三、计算与问答
- 3.1
- 3.2
- 第五章作业
- 三、计算与问答
- 3.1
- 3.3
- 3.4
- VLAN
- 交换机模式
- 模式切换
- 重置交换机
- VLAN配置命令
- 其它命令
第一章作业
三、计算与问答
3.7
- 长度为 8B与536B 的应用层数据通过传输层时加上了 20B的 TCP 报头,通过网络层时加上60B的IP分组头通过数据链路层时加上了18B的 Ethernet 头和尾。分别计算两种情况下的数据传输效率。
8B: 8 8 + 20 + 60 + 18 = 4 53 ≈ 0.0755 \frac{8}{8+20+60+18}=\frac{4}{53} \approx 0.0755 8+20+60+188=534≈0.0755
536B: 536 536 + 20 + 60 + 18 = 536 634 ≈ 0.845 \frac{536}{536+20+60+18}=\frac{536}{634} \approx 0.845 536+20+60+18536=634536≈0.845
3.8
- 计算发送延时与传播延时条件:
主机之间传输介质长度 D=1000km。电磁波传播速度为 2 × 1 0 8 2\times10^8 2×108m/s。
(1) 数据长度为 1 × 1 0 3 1\times10^3 1×103bit,数据发送速率为100Kbps。
(2) 数据长度为 1 × 1 0 8 1\times10^8 1×108bit,数据发送速率为10Gbps。
(1)
数据长度:N= 1 × 1 0 3 1\times10^3 1×103bit
数据发送速率:S=100Kbps
发送延时 T = N S = 1 0 3 100 × 1 0 3 = 1 100 s \mathrm{T}=\frac{N}{S}=\frac{10^3}{100\times 10^3}=\frac{1}{100}\mathrm{s} T=SN=100×103103=1001s
传播距离:D=1000km
传播速度:V= 2 × 1 0 8 2\times10^8 2×108m/s
传播时间: T = D V = 1000 × 1 0 3 2 × 1 0 8 = 1 200 T = \frac{D}{V}=\frac{1000\times 10^3}{2\times10^8}=\frac{1}{200} T=VD=2×1081000×103=2001s
(2)
发送延时 T = N S = 1 0 8 10 × 1 0 9 = 1 100 s \mathrm{T}=\frac{N}{S}=\frac{10^8}{10\times 10^9}=\frac{1}{100}\mathrm{s} T=SN=10×109108=1001s
传播时间: T = D V = 1000 × 1 0 3 2 × 1 0 8 = 1 200 T = \frac{D}{V}=\frac{1000\times 10^3}{2\times10^8}=\frac{1}{200} T=VD=2×1081000×103=2001s
第二章作业
三、计算与问答
3.2
- 计算机网络采用层次结构的模型有什么好处?
3.5
- 请描述在 OSI 参考模型中数据传输的基本过程。
3.6
- TCP/IP的主要特点是什么?
第三章作业
三、计算与问答
3.1
- 已知:电话线路带宽B=3000Hz,根据奎斯特准则求无噪声信道的最大数据传输速率为多少?
参考教材 P85
根据奈奎斯特定理,二进制数据信号的最大传输速率 R m a x R_{max} Rmax与理想信道带宽 B B B(单位 H z \mathrm{Hz} Hz)的关系可以写为 R m a x = 2 B ( b p s ) R_{max}=2B(bps) Rmax=2B(bps).
B = 3000 H z \mathrm{B}=3000Hz B=3000Hz
R m a x = 2 B = 2 × 3000 = 6000 b p s R_{max}=2B=2\times 3000=6000\;bps Rmax=2B=2×3000=6000bps
3.5
参考教材 P80
比特率S(单位为bps)与调制速率B(单位为baud)之间的关系可以表示为: S = B ⋅ l o g 2 k S=B\cdot\mathrm{log}_2k S=B⋅log2k。 k k k为多相调制的相数, l o g 2 k \mathrm{log}_2k log2k值表示一次调制转态的变化传输的二进制比特数。
调制速率:B(baud) | 多相调制的相数: l o g 2 k \mathrm{log}_2k log2k | 数据传输速率:S(bps) |
---|---|---|
3600 | QPSK-8 ( l o g 2 8 = 3 ) (\mathrm{log}_28=3) (log28=3) | 3600 × 3 = 10800 3600\times 3=10800 3600×3=10800 |
3600 | QPSK-16 ( l o g 2 16 = 4 ) (\mathrm{log}_216=4) (log216=4) | 3600 × 4 = 14400 3600\times 4=14400 3600×4=14400 |
3600 | QPSK-64 ( l o g 2 64 = 6 ) (\mathrm{log}_264=6) (log264=6) | 3600 × 6 = 21600 3600\times 6=21600 3600×6=21600 |
3600 | QPSK-256 ( l o g 2 256 = 8 ) (\mathrm{log}_2256=8) (log2256=8) | 3600 × 8 = 28800 3600\times 8=28800 3600×8=28800 |
3.7
- 已知:A=01011011。请画出A的差分曼彻斯特编码的波形
参考教材 P81
Online python: Python compiler: link
如果自己机器上没有Python环境,可以用在线Python解析器来运行下面的代码
# 绘制差分曼彻斯特编码code
# 定义一个函数,接受一个二进制字符串作为参数,返回一个差分曼彻斯特编码的波形图
# 导入matplotlib库,用来绘制波形图
import matplotlib.pyplot as pltdef diff_manchester(binary_string, level=-1):# 初始化一个空列表,用来存储编码后的电平值levels = []# 初始化一个变量,用来记录当前的电频,默认初始电平为-1,表示低电频level = level# 遍历二进制字符串中的每个比特for bit in binary_string:# 如果比特为0,那么在比特周期的开始处电平跳变,中间保持不变if bit == "0":level = -level # 电平跳变levels.append(level) # 添加到列表中levels.append(level) # 添加到列表中# 如果比特为1,那么在比特周期的开始处电平保持不变,中间跳变else:levels.append(level) # 添加到列表中level = -level # 电平跳变levels.append(level) # 添加到列表中# 设置x轴的刻度,每个比特占两个单位xticks = [i for i in range(0, len(binary_string) * 2 + 1, 2)]# 设置x轴的标签,显示原始的二进制字符串xlabels = list(binary_string)# 在xlabels列表的末尾添加一个空字符串,使其长度与xticks相同xlabels.append("")# 创建一个新的图形plt.figure()# 绘制折线图,使用阶梯状的线条,颜色为蓝色,线宽为2plt.plot(levels, drawstyle="steps-pre", color="blue", linewidth=2)# 设置x轴的范围,从-0.5到最后一个比特的中间plt.xlim(-0.5, len(binary_string) * 2 - 0.5)# 设置y轴的范围,从-1.5到1.5plt.ylim(-1.5, 1.5)# 设置x轴的刻度和标签plt.xticks(xticks, xlabels)# 设置y轴的刻度和标签,只显示-1和1plt.yticks([-1, 1], [-1, 1])# 设置标题,显示差分曼彻斯特编码plt.title("Differential Manchester Encoding")# 遍历每个比特周期的开始处for i in range(0, len(binary_string) * 2, 2):# 绘制一条从-1.5到1.5的竖着的虚线,颜色为灰色,线宽为1plt.vlines(i, -1.5, 1.5, linestyles="dashed", color="gray", linewidth=1)# 显示图形plt.show()
# test
diff_manchester('01011011')
3.8
- 如果主机的数据发送速率达到 100Mbps,采用曼彻斯特编码,那么相应的时钟频率应该为多少?
答:200MHz
参考教材 P82
第四章作业
三、计算与问答
3.1
- 如果数据字段为11100011,生成多项式 G ( X ) = X 5 + X 4 + X + 1 G(X)=X^5+X^4+X+1 G(X)=X5+X4+X+1。请写出发送的比特序列,并画出曼彻斯特编码序号波形图。
参考教材:P108
参考视频链接
模二运算除法在线工具
G ( X ) G(X) G(X)展开式: G ( X ) = 1 × X 5 + 1 × X 4 + 0 × X 3 + 0 × X 2 + 1 × X 1 + 1 × X 0 G(X)=1\times X^5+1\times X^4+0\times X^3+0\times X^2+1\times X^1+1\times X^0 G(X)=1×X5+1×X4+0×X3+0×X2+1×X1+1×X0
G ( X ) G(X) G(X)展开式的系数,既多项式比特序列: 1 1 0 0 1 1 1\;1\;0\;0\;1\;1 110011
f ( x ) f(x) f(x)数据字段: 1 1 1 0 0 0 1 1 1\;1\;1\;0\;0\;0\;1\;1 11100011
多项式的系数序列的长度: N = 6 N=6 N=6
余数的长度 k k k为多项式的系数序列的长度 N − 1 N-1 N−1: k = N − 1 ; e . g . , 6 − 1 = 5 k=N-1;\;e.g.,6-1=5 k=N−1;e.g.,6−1=5
余数的长度: k = 5 k=5 k=5
在数据字段后面增加k个0,用来保证够除以多项式比特序列,得到被除数: 1 1 1 0 0 0 1 1 0 0 0 0 0 1\;1\;1\;0\;0\;0\;1\;1\;0\;0\;0\;0\;0 1110001100000
用多项式比特序列: 1 1 0 0 1 1 1\;1\;0\;0\;1\;1 110011作为除数, 1 1 1 0 0 0 1 1 0 0 0 0 0 1\;1\;1\;0\;0\;0\;1\;1\;0\;0\;0\;0\;0 1110001100000作为被除数,求余数,然后把余数加到被除数即可得到增加了CRC冗余码的传输比特流。
答案: 1 1 1 0 0 0 1 1 1 1 0 1 0 1\;1\;1\;0\;0\;0\;1\;1\;1\;1\;0\;1\;0 1110001111010
计算过程:
(1) 求余数
求得余数为: 1 1 0 1 0 1\;1\;0\;1\;0 11010
(2) 求传输比特流
发送比特序列=被除数+余数
发送比特序列 = 1 1 1 0 0 0 1 1 0 0 0 0 0 + 1 1 0 1 0 = 1 1 1 0 0 0 1 1 1 1 0 1 0 1\;1\;1\;0\;0\;0\;1\;1\;0\;0\;0\;0\;0+1\;1\;0\;1\;0=1\;1\;1\;0\;0\;0\;1\;1\;1\;1\;0\;1\;0 1110001100000+11010=1110001111010
曼彻斯特编码波形:
参考教材 P81
教材的规则:低到高为1,高到低为0。
补充知识:被除数 ÷ \div ÷除数=商
e.g.,
Online python: Python compiler: link
如果自己机器上没有Python环境,可以用在线Python解析器来运行下面的代码
# 绘制曼彻斯特编码波形code
# 导入matplotlib库
import matplotlib.pyplot as plt# 定义一个函数,输入任意二进制比特流,绘制出曼彻斯特编码图
def manchester_encoding(bitstream):# 初始化曼彻斯特编码的列表manchester = []# 遍历输入的比特流for bit in bitstream:# 如果当前比特是0,曼彻斯特编码为01if bit == '0':manchester.extend([0, 1])# 如果当前比特是1,曼彻斯特编码为10elif bit == '1':manchester.extend([1, 0])# 反转曼彻斯特编码的列表,让0用低电平表示,1用高电平表示manchester = [1 - x for x in manchester]# 绘制曼彻斯特编码的图plt.figure(figsize=(5, 3))plt.step(range(len(manchester)), manchester, where='post')plt.title('Manchester encoding of ' + bitstream)plt.xlabel('Time')plt.ylabel('Level')plt.yticks([0, 1])plt.tight_layout()plt.show()# 测试函数
manchester_encoding('1110001111010')
3.2
- 某个数据通信系统采用 CRC校验方式,并且生成多项式 G ( x ) G(x) G(x)的二进制比特序列为11001,目的主机接收到的二进制比特序列为 110111001(含 CRC 校验码)。请判断传输过程中是否出现了差错?为什么?
答案:出错,因为除不尽呀
参考教材 P108
CRC的校验原理为:
发送方
除数=二进制比特序列
被除数=原始数据+二进制比特序列长度-1个0
余数=被除数 ÷ {\div} ÷除数
发送数据=被除数+余数
接收方
用接收到的数据 ÷ \div ÷除数,如果余数为0则认为没有错误,否则有错
需要说明的是:除数是提前约定好的,两方都是在协议里提前说好的
计算过程:
接收到的数据 ÷ \div ÷除数 ≠ 0 \ne 0 =0,所以数据在传输过程中发生错误。
第五章作业
三、计算与问答
3.1
- 采用CSMA/CD介质访问控制方式的局域网,总线长度为 1000m,数据传输速率为10Mbps,电磁波在总线传输介质中的传播速度为 2 × 1 0 8 2\times10^8 2×108m/s。计算:最小帧长度应该为多少?
参考教材p146
最短帧长度: L m i n L_{min} Lmin
主机发送速率: S S S
主机发送的数据帧最短帧长=争用期时长×数据传输速率: L m i n = 2 τ × V L_{min}=2\tau\times V Lmin=2τ×V。
传输延迟=总线长度/传播速度,既: τ = D / V \tau=D/V τ=D/V
其中争用期为端到端传输时延的两倍 : T c = 2 τ T_c = 2\tau Tc=2τ
如果发生主机发送信号后出现冲突则在 2 τ 2\tau 2τ时间内必能检测到并停止发送,如果发送信息的时间短于争用期,则在检测到冲突之前信息就已经发送完毕,所以发送数据帧的时间应长于争用期。
既要满足关系: L m i n S ≥ T c \frac{L_{min}}{S}\ge T_c SLmin≥Tc
D=1000
V = 2 × 1 0 8 2\times10^8 2×108
S = 10Mbps
τ = D V = 1000 2 × 1 0 8 = 0.5 × 1 0 − 5 \tau=\frac{D}{V}=\frac{1000}{2\times10^8}=0.5\times10^{-5} τ=VD=2×1081000=0.5×10−5
T c = 2 τ = 2 × 0.5 × 1 0 − 5 = 1 0 − 5 T_c=2\tau=2\times0.5\times10^{-5}=10^{-5} Tc=2τ=2×0.5×10−5=10−5
L m i n = T c × S = 1 0 5 × 10 M b p s = 1 0 − 5 × 10 × 1 0 6 b p s = 100 L_{min}=T_c\times S =10^{5}\times10\mathrm{Mbps}=10^{-5}\times 10\times 10^{6}\mathrm{bps}=100 Lmin=Tc×S=105×10Mbps=10−5×10×106bps=100bit
3.3
3.主机A 连接在总线长度为 1000m 的局域网总线的一端,局域网介质访控制方式为CSMA/CD,发送速率为100Mbps。电磁波在总线传输介质中的传播速度为 2 × 1 0 8 2\times10^8 2×108m/s。如果主机 A 最先发送帧,并且在检测出冲突发生的时候还有数据要发送。请回答:
(1)主机A 检测到冲突需要多长时间?
(2)当检测到冲突的时候,主机 A 已经发送多少位的数据?
(1)
D=1000
V= 2 × 1 0 8 2\times10^8 2×108
τ = D V = 1000 2 × 1 0 8 = 0.5 × 1 0 − 5 \tau=\frac{D}{V}=\frac{1000}{2\times10^8}=0.5\times10^{-5} τ=VD=2×1081000=0.5×10−5s
T c = 2 τ = 2 × 0.5 × 1 0 − 5 = 1 0 − 5 T_c = 2\tau=2\times0.5\times10^{-5}=10^{-5} Tc=2τ=2×0.5×10−5=10−5s=10 μ \mu μs
(2)
S=100Mbps= 100 × 1 0 6 100\times 10^6 100×106bps
L m i n = S × T c = 100 × 1 0 6 × 1 0 − 5 = 1000 L_{min}=S\times T_c=100\times 10^6\times10^{-5}=1000 Lmin=S×Tc=100×106×10−5=1000bit
3.4
- 采用 CSMA/CD介质访问控制方式的局域网,总线长度为 2000m,数据传输速率为10Mbps,电磁波在总线传输介质中的传播速度为 2 × 1 0 8 2\times10^8 2×108m/s。
假设:局域网中主机A 与主机 B连接在总线的两端并且只有主机 A、B发送数据。请回答:
(1)如果发送数据后发生冲突,那么从开始发送数据到检测到冲突,最短需要多少时间?最长需要多少时间?
(2)如果局域网中不存在冲突,主机A发送一个最长 Ethernet 帧(1518B)之后,主机B就用一个最短 Ethernet帧 (64B)确认。主机 A在得到确认之后就立即发送下一帧。忽略帧间间隔,那么主机 A的有效传输速率是多少?
(1)
最短时间( T 1 T_1 T1):既主机A和主机B同时开始发送数据的情况下,那么他们会在传输过程中检测到冲突的时间。
最长时间( T 2 T_2 T2):就是一个先发,数据刚要到另一个机器的时候,另一个机器开始发,比如主机A在检测到总线空闲后开始发送数据,而主机B在主机A的数据到达之前的一瞬间也开始发送数据,那么他们会在主机B的数据到达主机A处时检测到冲突。
显然最长时间是最短时间的两倍既: T 2 = 2 T 1 T_2=2T_1 T2=2T1
D=2000
V= 2 × 1 0 8 2\times10^8 2×108
S=10Mbps= 10 × 1 0 6 10\times 10^6 10×106bps
T 1 = D V = 2000 2 × 1 0 8 = 1 × 1 0 − 5 s = 10 μ T_1=\frac{D}{V}=\frac{2000}{2\times10^8}=1\times10^{-5}\mathrm{s}=10\mu T1=VD=2×1082000=1×10−5s=10μs
T 2 = 2 T 1 = 20 μ T_2 = 2T_1=20\mu T2=2T1=20μs
(2)
有效传输速率:如果局域网中不存在冲突,那么主机A发送一个最长 Ethernet 帧(1518B)的时间为 T 3 T_3 T3
T 3 = 1518 B × 8 b i t 10 M b p s = 1.2144 × 1 0 − 3 s = 1.2144 m s T_3=\frac{1518 \mathrm{~B} \times 8 \mathrm{bit}}{10 \mathrm{Mbps}}=1.2144\times10^{-3}\mathrm{s}=1.2144 \mathrm{~ms} T3=10Mbps1518 B×8bit=1.2144×10−3s=1.2144 ms
主机B收到主机A的帧后,立即发送一个最短 Ethernet 帧 (64B)作为确认,其发送时间为 T 4 T_4 T4
T 4 = 64 B × 8 b i t 10 M b p s = 0.0512 × 1 0 − 3 s = 0.0512 m s T_{4}=\frac{64 \mathrm{~B} \times 8 \mathrm{bit}}{10 \mathrm{Mbps}}=0.0512\times 10^{-3}\mathrm{s}=0.0512 \mathrm{~ms} T4=10Mbps64 B×8bit=0.0512×10−3s=0.0512 ms
主机A收到主机B的确认后,立即发送下一帧,那么主机A发送两个最长 Ethernet 帧的时间间隔,既发送一个帧到在发送下一个帧的时间为 T 5 T_5 T5
T 5 = T 3 + 2 × T 1 + T 4 = 1.2865 × 1 0 − 3 s = 1.2865 m s T_5=T_3+2\times T_1+T_4=1.2865\times10^{-3}\mathrm{s}=1.2865ms T5=T3+2×T1+T4=1.2865×10−3s=1.2865ms
其中, T 1 T_1 T1为主机A、B之间帧的传输时间,2倍 T 1 T_1 T1表示A传给B,B的确认信息又传给A。
在计算主机A发送一个完整的最长 Ethernet 帧的有效传输速率时,只考虑帧中的有效数据,既去除帧头的18B
r = ( 1518 − 18 ) B × 8 b i t T 5 ≈ 9.33 M b p s r=\frac{(1518-18) B \times 8 b i t}{T_{5}}\approx 9.33 \mathrm{Mbps} r=T5(1518−18)B×8bit≈9.33Mbps
VLAN
交换机模式
Switch> 用户模式,可以查看信息,不能修改配置,默认入口
Switch# (enable)特权模式,可以查看信息,可以执行管理命令,如重启,备份,重置等
Switch(config)# (conf t)全局配置模式,可以修改交换机的全局配置,比如主机名,密码,IP
Switch(config-if)# (interface FastEthernet0/1)接口配置模式,可以修改各个接口的配置,VLAN编号,名称等
模式切换
从用户模式进入特权模式:输入enable命令,然后输入密码。
从特权模式进入全局配置模式:输入configure terminal命令。
从全局配置模式进入接口配置模式:输入interface命令,然后输入接口编号。
从全局配置模式进入VLAN配置模式:输入vlan database命令。
从任何模式返回上一级模式:输入exit命令。
从任何模式返回用户模式:输入end命令。
在全局配置模式下执行特权模式的命令:在命令前加do关键字。
重置交换机
enable: 进入特权模式
erase startup-config:重置配置文件
reload:重启交换机
VLAN配置命令
Switch>enable # 进入特权模式
Switch#show vlan # 查看vlan
Switch#conf t # 进入全局配置模式
Switch(config)#vlan 10 # 全局模式下创建VLAN编号
Switch(config-vlan)#name VLAN10 # VLAN 配置模式
Switch(config-vlan)#exit # 退出VLAN配置模式到全局配置模式
Switch(config)#do show vlan # 全局配置模式下查看VLAN信息
Switch(config)#no vlan 10 # 全局模式下清除VLAN
Switch(config)#interface FastEthernet0/1 #进入交换机端口1
Switch(config)#interface FastEthernet0/1 #配置端口1的模式为access,access表示该端口只允许一个VLAN数据通过
Switch(config-if)#switchport access vlan 10 #配置端口2属于vlan 10
Switch(config-if)#exit 退出端口1
Switch(config-if)#switchport mode trunk #配置端口类型为trunk模式,trunk模式运行多个VLAN的数据通过该端口
其它命令
ping ip #测试网络是否畅通
arp -a #查看可到达的ip-mac 地址表
ipconfig -all # 查看网络配置信息
netsh interface ip set address name=“本地连接” source=static addr=192.168.0.3 mask=255.255.255.0 gateway=192.168.0.1 gwmetric=auto(gateway和gwmetric默认不设置也可以)
相关文章:

计算机网络课后作业2023秋
计算机网络第三版吴功宜版 课后作业 第一章作业三、计算与问答3.73.8 第二章作业三、计算与问答3.23.53.6 第三章作业三、计算与问答3.13.53.73.8 第四章作业三、计算与问答3.13.2 第五章作业三、计算与问答3.13.33.4VLAN交换机模式模式切换重置交换机VLAN配置命令其…...

阿里云国际站:全球加速GA
文章目录 一、前言 二、阿里云全球加速的概念 三、阿里云全球加速的功能优势 四、阿里云全球加速的原理 五、阿里云全球加速的应用场景 六、写在最后 一、前言 随着互联网的快速发展,网站速度已经成为了用户访问体验的一个重要指标。阿里云加速作为一种新的技…...

M2LC-Net
模型结构 作者未提供代码...

Jenkins 质量扫描
代码质量扫描工具(SonarQube) 质量评审 SonarQube有四个关键组件 ◼ SonarQube Server运行有三个组件 ◆ Web Server:UI ◆ Search Server:为UI提供搜索功能,基于ElasticSearch ◆ Compute Engine Server:…...

【LeetCode刷题笔记】滑动窗口
992. K 个不同整数的子数组 解题思路: 滑动窗口 , 题目问题转化为: 求 「最多存在 K 个不同整数的子数组的个数」 与 「最多存在 K - 1 个不同整数的子数组的个数」 之差, 就是题目所求的 「恰好存在 K 个不同整数的子数组的个数」 , 最终问题就变成求解滑动窗口内,以 R …...

笔试题之指针和数组的精讲
𝙉𝙞𝙘𝙚!!👏🏻‧✧̣̥̇‧✦👏🏻‧✧̣̥̇‧✦ 👏🏻‧✧̣̥̇:Solitary-walk ⸝⋆ ━━━┓ - 个性标签 - :来于“云”的“羽球人”。…...
.secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复
导言: 勒索病毒成为了网络安全的一项严峻挑战,其中.secret勒索病毒尤为引人注目。这种恶意软件通过加密用户的数据文件,使其无法访问,并勒索受害者支付赎金以获取解密密钥。本文将介绍.secret勒索病毒的基本信息,以及…...

junit写搜索树测试
用法 assertTrue(range.contains("Two")); 2个参数,右边错就打印左边. AbstractSelfBalancingBinarySearchTree abt; AbstractBinarySearchTree.Node node; Before public void setUp() { abt new AbstractSelfBalancingBinarySearchTree() { Override protecte…...
顺丰接口对接-订单创建与取消(java单元测试)
api文档 下单接口 :https://qiao.sf-express.com/Api/ApiDetails?level3393&interName%E4%B8%8B%E8%AE%A2%E5%8D%95%E6%8E%A5%E5%8F%A3-EXP_RECE_CREATE_ORDER 取消订单接口: https://qiao.sf-express.com/Api/ApiDetails?level3339&interNa…...

C++:OJ练习(每日练习!)
编程题: 题一:计算日期到天数的转换 计算日期到天数转换_牛客题霸_牛客网 (nowcoder.com) 示例1 输入: 2012 12 31 输出: 366 思路一: 第一步:创建年,月,日的变量,并按…...
GPTs Hunter 是什么?
原文: https://openaigptguide.com/openai-gpts-hunter/ GPTs Hunter 是一个功能强大的免费导航网站,支持多语言,提供用户友好的界面。 GPTs Hunter:功能强大的免费导航网站 GPTs Hunter是一个功能强大的免费导航网站ÿ…...

【移远QuecPython】EC800M物联网开发板的硬件TIM定时器精准延时
【移远QuecPython】EC800M物联网开发板的硬件TIM定时器精准延时 文章目录 导入库定时器初始化延时函数定时中断回调调用函数打包附录:列表的赋值类型和py打包列表赋值BUG复现代码改进优化总结 py打包 首先 这个定时器是硬件底层级别的 优先级最高 如果调用 会导致GN…...
HDU 1027:Ignatius and the Princess II ← next_permutation()
【题目来源】http://acm.hdu.edu.cn/showproblem.php?pid1027【题目描述】 Now our hero finds the door to the BEelzebub feng5166. He opens the door and finds feng5166 is about to kill our pretty Princess. But now the BEelzebub has to beat our hero first. feng5…...

主题讲座:全球增材制造现状与未来(暨香港科技大学广州|智能制造学域2024博士学位全额奖学金项目)
时间:2023 年11月16日(星期四)14:30 地点:合肥工业大学 学术会议中心三楼报告厅 主讲嘉宾:陈模军 助理教授 https://facultyprofiles.hkust-gz.edu.cn/faculty-personal-page/CHEN-Mojun/mjchen 报名表直达࿱…...
hugeGraph修改PropertyKey属性类型
修改PropertyKey字段属性的类型,发现没办法保留数据的前提下修改,智能是先删除数据,然后再修改,或者备份后修改再恢复。 方法一、 修改groovy脚本中的Text为Int后重新建元数据 schema.propertyKey(“youkey”).asText().valueSing…...

vscode 访问本地或者远程docker环境
1、vscode 访问docker本地环境 直接点击左下角连接图标,弹出选项可以选择容器,只要容器在本地运行者,选择attach可以看到运行中的容器可以选择,选择其中需要选择的就行 ## 运行容器,可以-d后台运行都可以 docker run…...

人工智能与充电技术:携手共创智能充电新时代
人工智能与充电技术:携手共创智能充电新时代 摘要:本文探讨了人工智能与充电技术的结合及其在未来充电设施领域的应用。通过分析智能充电系统的技术原理、优势以及挑战,本文展望了由人工智能驱动的充电技术为未来电动交通带来的巨大变革与机…...
『自定义B站视频播放速度』
哔哩哔哩 的最高播放速度是 2.0, 但对于我们这种程序员来说,2.0 速度观看学习视频还是稍微慢了点, 🫵🏻3.0 以上才是王道🫵🏻, 下面就是具体的操作方法: ① 在浏览器…...

Java入门篇 之 继承
本篇碎碎念:最近的课程遇到瓶颈了,看的时候感觉自己会了,但是结束仔细一回顾还是一知半解,一点一点来吧,基础必须要打好(自己给自己好的心里暗示,结局一定是好的) 今日份励志文案:慢慢改变,慢慢…...

如何计算掩膜图中多个封闭图形的面积
import cv2def calMaskArea(image,idx):mask cv2.inRange(image, idx, idx)contours, hierarchy cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)for contour in contours:area cv2.contourArea(contour)print("图形的面积为", area) image是…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...

微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...

图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
MySQL 部分重点知识篇
一、数据库对象 1. 主键 定义 :主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 :确保数据的完整性,便于数据的查询和管理。 示例 :在学生信息表中,学号可以作为主键ÿ…...

(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

ui框架-文件列表展示
ui框架-文件列表展示 介绍 UI框架的文件列表展示组件,可以展示文件夹,支持列表展示和图标展示模式。组件提供了丰富的功能和可配置选项,适用于文件管理、文件上传等场景。 功能特性 支持列表模式和网格模式的切换展示支持文件和文件夹的层…...