admin 管理员组文章数量: 1086019
408(持续更新)
数据结构
时间复杂度
线性表:
具有随即存储特性,查找时间复杂度为O(1)
单链表:尾插法
增加尾指针,申请空间,插入
栈及其应用
1.根据限定条件判断合法性:
根据输入序列判断,是否有可能的输出序列
2.最小容量:
题目:设栈S和队列Q,其状态为空,元素a1,a2,a3,a4,a5,a6依次入栈,出栈的元素则进入队列Q,若6个元素出列顺序是a2 ,a3 ,a4 ,a6, a5, a1,则栈的容量至少是()。
3
3.表达式求值***
4.中缀表达式转换为后缀表达式过程
2*(9+6/3-5)+4转化为后缀表达式2 9 6 3 / +5 - * 4
5.数制转换?
6.括号匹配?
7.表达式求值(中后)?
8.递归调用?
循环队列(两种情况
1.判断Q.rear==Q.front
2.(Q.rear+1)%maxsize ==Q.front
输入输出受限的双端队列
输出受限:可在一端插入删除,另一端仅可以插入
输入受限:反之
树
树的高度 log2(n)+1
1.节点数等于所有节点度+1
2.度为m的树中,第i层至多有
计算机网络:
1.基本概念(分层结构)
逻辑功能上分为资源子网和通信子网,通信子网对应物理层,数据链路层,网络层。
物理组成上:硬件,软件,协议
广域网、局域网区别:覆盖范围不同;协议和网络技术不同。广域网采用点对点技术,局域网广播技术
·mtu:最大传输单元,
mss:Tcp给IP层的最大分段大小
2.物理层传输介质:
双绞线:胶合目的:减少两根导线的电磁干烧
IEEE802.3:规定采用同轴电缆作为介质,不能超过500M
3.ISO与TCP/ip模型区别
iso:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层
TCP/ip:应用层、传输层、网际层、数据链路层、物理层
网际层:仅支持无连接,网络层:支持无连接和面向连接
TCP传输层:支持无连接和面向连接
iSO:仅支持面向连接
4.曼彻斯特编码:跃变为1?
不会
曼彻斯特编码:1前高后低 0 前低后高
4B/5B encoding不会
目标:如何在解决基线漂移和时钟漂移的同时,使编码效率尽量高一些 思想:在比特流中插入额外的比特而打破一连串的 0 或 1 方法:用 5 个比特来编码 4 个比特的数据,然后再传给接收方 5 比特代码由以下方式选定:每个代码最多有一个前导 0,并且末尾最多有 2 个 0 这样在连续传送时,在传输过程中任何一段 5 比特代码,连续的 0 最多有 3 个. 最后使用 NRZI 编码进行传输,就解决了问题 4B/5B 编码的效率为 80%
5.奈奎斯特定理、香农定理:
有关传输速率上限的两个定理(注:带宽——频率范围) Nyquist 定理: D(比特率) = 2 f(带宽) log2 N(电压种数) 无噪音情况下的最大传输速率 Shannon 定理: C(比特率) = B log2 (1 + S(信号) / N(噪声)) 引入信噪比 = 10 * lg (S/N)
码元串书速率(波特率):
信息传输速率(比特率):美妙传送的二进制位数
比特率 = 波特率* log2电平数(相位数)
6.电路交换\报文交换\分组交换
电路交换:整个报文的比特流连续的从源点直达终点,好像在一个管道中传送
报文交换:整个报文先传送到相邻节点,全部存储下来后查找转发表, 转发到下一个节点
分组交换: 单个分组(整个报文段的一部分)传送到相邻节点,存储下来查找转发表, 转发到下一个节点 (灵活性最好,时延小)
牛客错题
物理层:集线器,转发器
数据链路层:网桥
网络层:路由器,网关
CSMA/CD适用于有线网络,而CSMA/CA则广泛应用于无线局域网(具体原因请见王道2017版单科书P90)。其他选项关于CSMA/CD的描述都是正确的。
7.物理层接口与物理层设备????
(每块网卡出厂就有全球唯一的mac地址)
路由器:隔离广播域(网络层设备)
交换器、网桥(链路层设备),路由器可以隔离冲突域
集线器(Hub)、中继器都不能隔离 (中继器放大数字信号,放大器放大模拟信号)
网卡实现主要功能在物理层、数据链路层
8.HDLC的零比特填充法:5个0加个1
12MAC帧的格式
常见的mac有两种格式
1.dix etherent标准 一种是IEEE的802.3标准 两种帧的结构
16网络层的功能
主要任务:
把分组从源端 传到目的端,为分组交换网上的不同主机提供通信服务
传输单位:数据报
路由选择和分组转发
18.IP子网划分、CIDR
1.划分子网
划分前 ip地址为两级结构(<网络号><主机号>)
划分后ip地址为三级结构(《网络号》《子网号》《主机号》)
2子网掩码
A类:255.0.0.0
b类:255.255.0.0
C类:255.255.255.0
3.计算??
!!!!!!
例如
20.ARP,DHCP,ICMP协议
一地址解析协议ARP
数据库
1.语法 desc 倒叙序
SELECT DISTINCT 列名称 FROM 表名称 返回唯一不同的 值
实例 2
以字母顺序显示公司名称(Company),并以数字顺序显示顺序号(OrderNumber):
SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber
实例 3
以逆字母顺序显示公司名称:
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC
实例 4
以逆字母顺序显示公司名称,并以数字顺序显示顺序号:
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC
1.INSERT INTO 语句
INSERT INTO 语句用于向表格中插入新的行。
语法
INSERT INTO 表名称 VALUES (值1, 值2,....)
我们也可以指定所要插入数据的列:
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
2.Update 语句
Update 语句用于修改表中的数据。
语法:
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
3.DELETE语句
delete用于删除表中的行
delete from 表名称 Where 列名 = 值
2.高级语法/
1.SQL TOP子句
LIKE 操作符实例
例子 1
现在,我们希望从上面的 "Persons" 表中选取居住在以 "N" 开始的城市里的人:
我们可以使用下面的 SELECT 语句:
SELECT * FROM Persons WHERE City LIKE 'N%'
2.group by和having使用
having是在 group by 后面使用的
牛客题目
1下面哪些字符最可能会导致sql注入?
‘
2某打车公司将驾驶里程(drivedistanced)超过5000里的司机信息转移到一张称为seniordrivers 的表中,他们的详细情况被记录在表drivers 中,正确的sql为()
select * into seniordrivers from drivers where drivedistanced >=5000
查排第几
#含义是跳过2条取出1条数据,limit后面是从第2条开始读,读取1条信息,即读取第3条数据 select * from students order by grades desc limit 2,1
操作系统:
概述
开机后操作系统加载到RAM(内存)
批处理交互性差
现代oS两个最基本特征: 并发与共享,互为存在的条件.(虚拟 异步)
不属于多道程序设计的基本特征:顺序性(为单道程序设计特征, 多道为竞争 )
内核态 用户态
用户态:算态(目态)
用户运行一个程序,该程序创建的进程开始时运行自己的代码,处于用户态。如果要执行文件操作、网络数据发送等操作必须通过write、send等系统调用,这些系统调用会调用内核的代码。进程会切换到Ring0,然后进入3G-4G中的内核地址空间去执行内核代码来完成相应的操作。内核态的进程执行完后又会切换到Ring3,
内核态:
管态
PSW:程序状态寄存器
中断和异常:
中断由外因引起,异常由CPU本身原因引起
主程序调用子程序完全是软件处理过程
访管中断:
处理机调度(进程调度没看)
处理机调度层次
1高级调度
对作业调度 将作业调入内存为他们创建进程,分配必要的资源
2.低级调度
对进程调度,决定就就绪队列中的进程获得处理机
3中级调度:
对内存调度,提高内存利用率和吞吐量,作用:暂时不能运行的、进程,调至外村等待
作业
作业:批处理系统中,作业为基本单位
作业步:作业需要通过一系列操作的顺序才能得到结果,把其中一步称为一个作业步
作业控制块:JCB 和PCB相似 作业标识用户名称账号类型作业类型,作业专业 调度信息,资源需求
运行阶段状态:收容状态 运行状态 完成状态
作业调度目标
根据jcb中的信息,检查系统中的资源能否满足作业队资源的需求,并且按照一定的调度算法,从外村的后备队列中选取某些作业调入内存
常见算法:
先来先服务:FCFS 根据作业到达的先后次序来进行调度
短作业优先:SJF 作业越短,优先级越高, 长短是根据作业所要求的时间来衡量的
缺点:对长作业很不利 容易出现饥饿现象,需要知道作业的时间,
优先级调度算法:PSA 根据作业的紧迫程度 赋予作业优先级 进行调度
高响应比优先算法: HRRN
HRRN为每一个作业引入了一个动态优先权。该优先权的变化规律如下: 优 先 权 = (等待时间+要求服务时间) / 要求服务时间 == 响应时间 / 要求服务时间
进程同步和互斥
临界资源:把一次仅允许一个进程使用的资源成为临界资源
例子:打印机 变量 进程
对临界资源访问:必须互斥的进行
临界资源的访问过程分为四个部分:
进入区:在进入区检查可否进入临界区,若可以进入,应设置正在访问临界区的标志
临界区:进程中访问临界资源的那段代码
退出区:将正在访问临界区的标志珊瑚
剩余区:代码中的剩余部分
同步
称直接制约关系,为完成同一个任务的两个进程或者多个进程,因为需要再某些位置上协调他们的工作次序而等待,传递信息所产生的制约关系,进程间的直接制约就是源于他们直接的相互合作
例如:进程A进入单缓冲区向进程B提供数据,当该缓冲区空时,进程B不能获得所需数据而阻塞,一旦进程A将数据松鼠缓冲区,进程B被唤醒
互斥
间接制约关系,当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界区后 ,另一个进程在允许去访问临界资源
同步机制准则:
空闲让进,忙则等待,优先等待,让权等待(当进程不能进入临界区时,应立即释放处理器,防止进程忙等待)
实现临界区互斥的基本方法
算法一:单标志
算法二:双标志先检查
算法三:双标志后检查
经典进程同步问题
生产者-消费者问题
读者-写者问题
哲学家进餐问题
死锁
产生的根本原因:
两个或者两个以上的线程,因抢夺资源而产生相互等待的现象
产生的四个条件
1.互斥
2.占有且等待,占有资源不释放
3.不可抢占,其他线程不能强行抢占线程的资源
4.循环等待条件:线程T1在持有资源A1,同时在请求等待获取资源B,线程T2在持有资源B,然后在请求等待线程T1的持有资源,形成了交叉闭环申请。
处理死锁的方法有以下四种:
1.死锁预防:
思索避免:银行家算法
死锁检测
死锁解除;强行回收占有资源
破坏死锁产生的四个条件之一即可。 破坏请求与保持条件:让进程一次性申请所有的资源。(资源一次性分配) 破坏不剥夺条件:拥有部分资源的进程在申请其他资源被拒绝时,可以主动的释放它现有的资源。(破坏不可剥夺条件) 破坏循环等待条件:给资源进行编号,进程按照编号顺序获取资源,释放资源时反序释放(资源有序分配法)
内存管理
连续分配方式:动态分区分配
连续指为用户分配一段连续的内存空间
动态分区分配 : 根据实际的需要动态的分配内存空间,使分区大小和作业的大小相等
分区分配中的数据结构
常用数据结构
空闲分区表:用于记录每个空闲分区的情况
每个空闲分区一个标目,分区大小,分区序号,分区始址
空闲分区链:个分区头部设置前向指针,尾部设置后向指针,使得所有空闲分区连接成双向链
为了检索方便,在分区尾部设置状态为,空闲为0 被分配出去为1
分区分配算法
虚拟存储管理技术之虚拟页式存储管理
页面淘汰算法:
先进先出页面淘汰算法FIFO
做法:淘汰最早进入内存的页面
认为:随着时间在内存中时间越久,访问的可能性月底
但实际上可能会把经常访问的淘汰出去
最近最久未使用页面淘汰算法LRU
做法:淘汰最长时间未被访问的页面
认为:刚刚被访问的页面,不久的将来被使用的可能就行就越大
最近最少使用页面淘汰算法LFU
做法:淘汰当前使用的最少的页面
认为:在一段时间使用的比较多的页面,在不久的将来使用的可能性就越大
最优页面淘汰算法OPT
做法:把以后不再使用的或最长时间内不会用到的页面淘汰出去
前提:已知作业运行时的页面走向
抖动:刚换出又要换入内存
本文标签: 408(持续更新)
版权声明:本文标题:408(持续更新) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1686560729a10417.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论