48天笔试训练错题——day40
目录
选择题
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
编程题
1. 发邮件
2. 最长上升子序列
选择题
1.

DNS 劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的 IP 地址或者什么都不做使请求失去响应,其效果就是对特定的网络,不能反应或访问的是假网站。
DDos 攻击:分布式拒绝服务攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动 DDos 攻击,从而成倍的提高拒绝服务攻击的威力。
MAC 地址欺骗:利用 mac 欺骗阻止局域网内任意电脑使用网络。
伪造 DHCP 服务器:本质上是 DHCP 欺骗攻击,将真的 DHCP 服务器的 ip 资源耗尽,然后部署假的 DHCP 服务器,让主机向假的 DHCP 服务器请求。
2.

三次握手 :

四次挥手:

3.

TCP 本身是可靠传输的协议,支持重传,纠错,网络拥塞处理等等。
TCP 本身是面向字节流的协议,对于发送的有效载荷的格式并不是很关心,由应用层协议来处理发送数据的格式,应用层协议由程序员来考虑和处理(TCP 粘包的问题也是如此)。
4.

HTTPS 在 HTTP 的基础上加入 SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。
对使用 HTTP 传输的数据使用 SSL 进行加密传输,第三者即使从网络当中获取数据包内容,也会由于没有加密的密钥而导致无法解析传输的内容,从而达到加密的效果。
5.

四次挥手:

6.

host 表示访问的 IP 地址,connection 的值是 close,所以应该是连接会在请求处理完毕后断开。
Cookie 是浏览器存储数据的方式,浏览器会将 Cookie 的 key/value 保存到某个目录下的文本文件内,下次请求同一网站时,就发送该 Cookie 给服务器。
7.

甲方的发送窗口 = min(接收窗口,拥塞窗口)

拥塞窗口以指数形式增长,后一次是前一次的两倍。
甲方发送的数据大小取决于接收窗口和拥塞窗口的较小值,
如上图,当经过四个往返时间后 接收窗口值变为 1.
8.

POP3 邮件协议版本3,是 TCP/IP 协议族中的一员。
该协议主要作用于支持使用客户端远程管理在服务器上的电子邮件。提供了 SSL 加密的 POP3 协议被称为 POP3S。
属于应用层协议,传输层协议使用 TCP 协议。
9.

UDP 是无连接,不可靠,面向数据报的协议,在协议头部当中有 16 字节的校验和,可以校验数据在传输过程当中是否失真,但是并不保证可靠。
传输层分用和复用就是把网络层提供的 host-to-host (主机对主机)传输服务扩展到运行于计算机上的应用进程间的传输服务,也就是点对点的传输,这里的点可以理解为端口。
分用是把传输层报文段当中的信息发送给正确的 socket 的服务(分用就是把传输层的数据给应用层)。
复用是把所有 socket 中的数据集中并加头信息封装,然后发送到网络层的服务(复用就是把传输层的数据给网络层)。
10.


编程题
1. 发邮件



根据以上思路,就很好写代码了。
代码实现:
import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {// 可以先算出所有的错排可能性,然后再根据 n 直接从数组取即可long[] arr = new long[21];arr[0] = 0;arr[1] = 0;arr[2] = 1;for (int i = 3; i < arr.length; i++) {arr[i] = (i - 1) * (arr[i - 1] + arr[i - 2]);}Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextInt()) { // 注意 while 处理多个 caseint n = in.nextInt();System.out.println(arr[n]);}}}
2. 最长上升子序列


这一道题也是非常经典的动态规划题目。
还是从 1. 定义状态 2. 状态转移方程 3. 初始化 4. 返回值 入手。

代码实现:
import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextInt()) { // 注意 while 处理多个 caseint n = in.nextInt();int[] arr = new int[n];for (int i = 0; i < arr.length; i++) {arr[i] = in.nextInt();}print(n, arr);}}public static void print(int n, int[] arr) {// dp[i] 就是数组 arr 中以 i 下标结尾的最长上升子序列的长度int[] dp = new int[n];// 初始化for (int i = 0; i < arr.length; i++) {dp[i] = 1;}for (int i = 1; i < dp.length; i++) {for (int j = 0; j < i; j++) {if (arr[j] < arr[i]) {dp[i] = Math.max(dp[i], dp[j] + 1);}}}int max = 1;for (int i = 0; i < dp.length; i++) {if (dp[i] > max) {max = dp[i];}}System.out.println(max);}
}

相关文章:
48天笔试训练错题——day40
目录 选择题 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 编程题 1. 发邮件 2. 最长上升子序列 选择题 1. DNS 劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回…...
LabVIEW在DCS中的优势
DCS(Distributed Control System,分布式控制系统)是一种用于工业过程控制的自动化系统。它将控制任务分散到多个控制单元中,通过网络连接和协调这些单元来实现对整个过程的监控和控制。DCS通常用于大型工业设施,如化工…...
英特尔:从硅谷创业到全球科技巨头
在科技行业,英特尔不仅是一个品牌,更是一种精神的象征。自1968年成立以来,英特尔经历了从初创企业到全球半导体产业领导者的华丽转变,其发展历程是科技创新与市场战略完美结合的典范。本文将深入探讨英特尔的发展历程,…...
生物计算与纳米技术:交汇前沿的科学领域
在当今科技迅猛发展的时代,生物计算和纳米技术作为前沿科技领域的两个重要方向,正在逐渐融合并带来深远的影响。生物计算涉及使用生物系统进行计算和数据存储,而纳米技术则关注制造极小尺度的电子器件和材料科学。本文将深入探讨这两个领域的…...
C#中栈和队列
在C#中,Stack和Queue是两种不同的集合类型,它们用于实现后进先出(LIFO)和先进先出(FIFO)的数据结构。 Stack(堆栈) Stack是一个后进先出的集合,这意味着最后一个添加到堆…...
技战法丨攻防演练防御——纵深、联动、诱捕(可搬运、可cv)
演习活动经过近几年的发展,攻击方的专业水平已大幅提高,逐渐呈现出隐秘化、APT化的趋势。其利用渗透技术对目标系统做深入探测,不断挖掘防守方网络系统的薄弱环节,这就要求防守方构建立体式纵深防护体系来抵御入侵。同时ÿ…...
1、 window平台opencv下载编译, 基于cmake和QT工具链
1. 环境准备,源码下载 1.1 前置环境 qt 下载安装cmake 安装,可参考: https://blog.csdn.net/qq_51355375/article/details/139186681 1.2 opencv 源码下载 官网地址: https://opencv.org/releases/ 下载源码: 2 …...
C++20三向比较运算符详解
三向比较运算符可以用于确定两个值的大小顺序,也被称为太空飞船操作符。使用单个表达式,它可以告诉一个值是否等于,小于或大于另一个值。 它返回的是类枚举(enumeration-like)类型,定义在 <compare> …...
监听机制与耗电量
一、监听机制与耗电量的关系 监听机制通常涉及对特定事件、状态或数据的持续监测。在移动设备和嵌入式系统中,这种监听可能由多种组件和传感器实现,如GPS、传感器(如加速度计、陀螺仪)、网络连接等。监听的频率越高,意…...
C++ //练习 16.29 修改你的Blob类,用你自己的shared_ptr代替标准库中的版本。
C Primer(第5版) 练习 16.29 练习 16.29 修改你的Blob类,用你自己的shared_ptr代替标准库中的版本。 环境:Linux Ubuntu(云服务器) 工具:vim 代码块 template <typename> class BlobP…...
【Mode Management】CanNm处于PBS状态下接收到一帧诊断报文DCM会响应吗
目录 前言 正文 1.CanNm从RSS状态切换到PBS状态行为分析 1.1.CanNm动作 1.2.ComM动作 1.3.DCM动作 1.4 小结 2.CanNM在PBS状态下收到一帧诊断报文行为分析 2.1.DCM动作1 2.2. ComM动作 2.3. DCM动作2 2.3. CanNm动作 2.4 问题 2.5 分析 3.总结 前言 我们知道EC…...
【C++】模版:范式编程、函数模板、类模板
目录 一.范式编程 二.函数模板 1.概念与格式 2.原理 3.实例化 4.匹配规则 三.类模板 一.范式编程 在写C函数重载的时候,可能会写很多同一类的函数,例如交换函数: void Swap(int& left, int& right) {int temp left;left r…...
验证图片旋转
最近在使用百度图片翻译时遇到一个问题,就是图片会翻转90,经与百度沟通,发现是原始图片中有个旋转参数引起的。 于是写个demo验证一下。 // 获取元数据中的旋转方向 func getOrientation() int {//打开图像文件f, err : os.Open("image…...
宏景eHR /ajax/ajaxService SQL注入漏洞复现
0x01 产品简介 宏景eHR人力资源管理软件是一款人力资源管理与数字化应用相融合,满足动态化、协同化、流程化、战略化需求的软件。 0x02 漏洞概述 宏景eHR /ajax/ajaxService 接口处存在SQL注入漏洞,,未经身份验证的远程攻击者通过利用SQL注入漏洞配合数据库xp_cmdshell可…...
从源码看 Redis:深入理解 redisDb 和 redisObject
Redis 是一个广泛使用的内存数据库,以其高性能和丰富的数据结构而闻名。不同于磁盘数据库,磁盘数据库将数据读取到文件中维护,而内存数据库将数据存储在内存中,意味着其想要维护数据,必须在代码中维护一个保存数据的结…...
unity中实现流光效果——世界空间下
Properties{_MainTex ("Texture", 2D) "white" {}_FlowColor ("Flow Color", Color) (1, 1, 1, 1) // 流光颜色_FlowFrequency ("Flow Frequency", Float) 1.0 // 流光频率_FlowSpeed ("Flow Speed", Float) 1.0 // 流光…...
项目经验分享:用4G路由器CPE接海康NVR采用国标GB28181协议TCP被动取流一段时间后设备就掉线了
最近我们在做一个生态化养殖的项目时,发现一个奇怪的现象: 项目现场由于没有有线网络,所以,我们在现场IPC接入到海康NVR之后,再通过一款4G的CPE接入到天翼云的国标GB28181视频平台;我们采用UDP协议播放NVR…...
【RabbitMQ】RabbitMQ不公平分发_预取值
一、不公平分发 1、简介 RabbitMQ中的不公平分发(Unfair Dispatch)是指当多个消费者(Consumers)同时订阅同一个队列(Queue)时,消息的分发机制并非严格平均或公平,而是基于某些条件…...
最新AI模型使用指南和模型
市面上最好的AI大模型 OpenAI GPT-4: 概述:GPT-4 是 OpenAI 发布的最新一代大型语言模型,具备更强的理解和生成自然语言的能力。特点: 强大的文本生成和理解能力。支持多语言处理。可用于各种应用场景,如对话生成、内容…...
数据结构之八大基本排序方法
在数据结构中,排序是一个重要的操作,它有助于提高数据的可读性和可操作性。排序算法有多种,各有优缺点,适用于不同的场景。以下是八大经典排序算法的介绍: 1. 冒泡排序(Bubble Sort) 原理&…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...
Golang——6、指针和结构体
指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?
Pod IP 的本质与特性 Pod IP 的定位 纯端点地址:Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址(如 10.244.1.2)无特殊名称:在 Kubernetes 中,它通常被称为 “Pod IP” 或 “容器 IP”生命周期:与 Pod …...
WPF八大法则:告别模态窗口卡顿
⚙️ 核心问题:阻塞式模态窗口的缺陷 原始代码中ShowDialog()会阻塞UI线程,导致后续逻辑无法执行: var result modalWindow.ShowDialog(); // 线程阻塞 ProcessResult(result); // 必须等待窗口关闭根本问题:…...
从物理机到云原生:全面解析计算虚拟化技术的演进与应用
前言:我的虚拟化技术探索之旅 我最早接触"虚拟机"的概念是从Java开始的——JVM(Java Virtual Machine)让"一次编写,到处运行"成为可能。这个软件层面的虚拟化让我着迷,但直到后来接触VMware和Doc…...
