整理的一些CSP初赛知识
孭~
1. bit(位) 存放一位二进制数,即0或1,最小存储单位
byte(B 字节)8个二进制位为1个字节,最常用的基本单位
1 B = 8 bit
1 TB = 2^10 GB = 2^20 MB = 2^30 KB = 2^40 B
2. 两个指针在任何情况下都不可相加,可相减
3. 操作系统:
DOS操作系统、Mac OS操作系统、Windows系统、Unix系统、Linux系统、OS/2系统
4. IP地址:一个32位的二进制数,通常被分割为4个“8位二进制数”
A类:1.0.0.0 ~ 126.255.255.255 (私有:10.0.0.0--10.255.255.255)
B类:128.0.0.0-191.255.255.255 (私有:172.16.0.0--172.31.255.255)
C类:192.0.0.0-223.255.255.255 (私有:192.168.0.0--192.168.255.255)
32位IP地址书写格式:
① 分四段,每段用“ .”点分割
② 每段的数字最大不超过255
③ 四段不能全为 0
5. 屏幕分辨率:屏幕上显示的像素个数,单位px
分辨率160×128:水平160个像素数,垂直128个像素
屏幕尺寸相同,分辨率越高,显示效果就越精细和细腻
6. 图像存储空间计算:
水平像素 * 垂直像素 * 每个像素所需位数 / 8 (单位B)
音频存储空间计算:
采样频率 * 采样位 * 通道数 * 时间 / 8(单位B)
7. 文件扩展名:
图像存储:jp(e)g png pic bmp gif
音频存储:mp3 wav
视频存储:mp4 avi mpeg flv rmvb rpm
8. 应用层 http smtp pop3 telnet snmp ftp dhcp tftp ssh
传输层 tcp udp spx
网络层 ip ipx ‘apple talk’
数据链路层 802.3、802.4、802.5、802.11、FDDI、ATM
物理层 v.24 v.35 RS232 RS485
9. 二叉树节点数:
n=n0+n1+n2
n0=n2+1
当n为奇数时,n1=0,n=2*n0-1
当n为偶数时,n1=1,n=2*n0
10. 特殊的二叉树及其性质:
满二叉树/完美二叉树:所有叶结点的深度均相同的二叉树
完全二叉树:只有最下面两层结点的度数可以小于 2,且最下面一层的结点都集中在该层的最左侧。
11. 计算机由运算器、控制器、存储器、输入设备和输出设备等五个逻辑部件组成
中央处理器(CPU): 运算器+控制器+寄存器
是任何计算机系统中必备的核心部件
访问速度:寄存器>高速缓存>内存>外存
运算器:由算术逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等组成
控制器:整个计算机系统的控制中心
存储器:现代信息技术中用于保存信息的记忆设备
主存储器(内存):读写速度快,存储空间小
RAM(随机存取存储器): 与CPU直接交互数据,可随时读写 断电数据全部丢失
ROM(只读存储器): 只能读出信息无法写入 断电数据不会丢失
辅助存储器(外存):读写速度慢,存储容量大
12. 高级语言:
如今的编译语言,需要用编译器
C、C++、Java、Python、Pascal、Lisp、Prolog、FoxPro、易语言等
编译方式(C++):先对整个程序进行编译,再执行程序 速度快
解释方式(Python、PHP):扫描一行解释一行,速度慢
低级语言:
机器语言: 最早的语言,计算机能识别的语言
由二进制数字 0/1组成,速度快
汇编语言: 用符号代替二进制数,计算机不能直接识别
需要用编译器进行编译
13. 能用来存储图的数据结构:
邻接矩阵、邻接表、十字链表、邻接多重表、编辑多重表
14. 具有n个顶点,e条边的图
采用邻接矩阵存储,广度优先遍历算法的时间复杂度为O(n^2)
不论<vi,vj>是否有路径,每条边都会遍历到,矩阵大小为n*n
采用邻接表存储,广度优先遍历和深度优先遍历的时间复杂度均为O(n+e)
每个结点访问一次,每条有路径的边访问一次
15. 哈夫曼算法采用了贪心思想 每次都找出频率最小的两个数
16. 已知二叉树节点数,求二叉树有几种形态
只有1个节点时,f(1)=1
有2个节点时,f(2)=f(1)+f(1)=2
有3个节点时,固定根节点,左右子树分布情况为2=2+0=1+1+0+2
即f(3)=f(2)*f(0)+f(1)*f(1)+f(0)*f(2)=5
有n个节点时,固定一个节点,
则左右子树分布情况为n-1 = n-1+0 = n-2+1 = … = 1+n-2 = 0+n-1
即f(n) =f(n-1)*f(0)+f(n-2)*f(1)+…+f(1)*f(n-2)+f(0)*f(n-1)
=(2n)!/(n+1)!/n!(卡特兰数)
其他使用卡特兰数解决的问题:
1,2,5,14,42,132,429,1430,4862,16796,58786,…
①矩阵链乘:P=a1*a2*a3*…*an,根据乘法结合律,不改变其顺序,只用括号表示成对的乘积,求括号化方案数
②一个无穷大的栈,进栈序列为1,2,3,…,n,求不同的出栈序列数
③求通过连接顶点将一个n+2边的凸多边形分成三角形的方法数
④在圆上选择2n个点,成对连接,使所得n条线段不相交的方法数
⑤从正方形对角线连线为√2 n,每次可向水平方向或竖直方向前进1,从一角到另一角共走2n,若不穿越对角线(可碰到),求不同的走法数
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战