CSP初赛篇·知识大纲(未完成)

PS.只记录个人认为的重点或者真题模拟题中出现的知识

PS.图片大多来自百度,内容借鉴百度和校本资料

在这里插入图片描述
在这里插入图片描述

信息学休闲娱乐

在这里插入图片描述
让我们先来认识一下几位 巨佬

(巨佬顺序按考试出现率排列,从高到低):

名字生卒年国籍信息学主要贡献称号、身份
艾伦·麦席森·图灵1912—1954图灵机,图灵奖,图灵实验计算机科学之父,人工智能之父
约翰·冯·诺依曼1903-1957美籍匈牙利体系构想,程序存放于内存计算机之父、博弈论之父
克劳德·艾尔伍德·香农1916—2001提出了信息熵的概念信息论的创始人
姚期智1946—现在通讯复杂度,伪随机数生成2000图灵奖,奠定现代密码学
艾达·拉芙蕾丝1815—1852Ada语言(后人纪念她)第一个程序员,计算机程序创始人

在这里插入图片描述
关于奖项

名称设立设立时间美称,意义
图灵奖 A.M. Turing Award美国计算机协会(ACM)1966计算机界诺贝尔奖
约翰·冯诺依曼奖电气和电子工程师协会(IEEE)1999
中国计算机学会王选奖(CCF王选奖)中国计算机学会2005

在这里插入图片描述

姚期智

中国人还是要多了解一点的。

图灵奖首位也是唯一一位华裔计算机学者
(对计算机理论包括伪随机数生成,密码学与通信复杂度的突出贡献)

在清华大学创立:
计算机科学实验班“姚班”
理论计算机科学研究中心(ITCS)
交叉信息研究院(IIIS)
量子信息中心(CQI)
在这里插入图片描述
下面放几张图灵的帅照,还有一部关于图灵的电影《模仿游戏》,强烈推荐!
在这里插入图片描述

注意!!除了图灵的照片和电影,上面的内容都曾经在真题或模拟题出现

在这里插入图片描述

进制转换(以二进制为例)

在这里插入图片描述
R进制转十进制:按权展开(小数,次方数取负)
在这里插入图片描述
在这里插入图片描述
十进制转R进制:整数除R取余法(倒着取),小数乘二取整法(正着取)
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

关于E(e)

大小写是一样的
数学上e表示2.718281828459……,但信奥里不同。
2000 = = = 2e3 = = = 2e+03 = = = 2e+3 ≠ \neq = 2e1+3 = = = 23
在这里插入图片描述
在这里插入图片描述

逻辑运算

运算优先级(从高到低)
( ) ()
n o t not not
∗ * / / / m o d mod mod a n d and and
x o r xor xor + + + − - o r or or
= = = ⩽ \leqslant , ⩾ \geqslant , < < <, > > >

∧ \wedge and两真为真 ∧ \wedge 符号像“且”,使a ∧ \wedge b为真,需要a为真且b为真
∨ \vee or有真为真 ∨ \vee 优先级低,且有真为真,运算中这点性质可以简化运算,遇 ∨ \vee 只需要判断一端
! ! ! ¬ ¬ ¬not是假为真
异或 ⨁ \bigoplus xor不同为真PS.数字的逻辑运算,转化为二进制,缺位补零,垂直对应两位运算
PS 逻辑运算符与位运算符的区别

逻辑运算符只能用于bool型的逻辑运算,位运算符还能用于数值的逻辑运算

PS 逻辑运算与位运算的区别

位运算就是直接对整数在内存中的二进制位进行操作,它是二进制对应位进行逻辑运算的结果
在这里插入图片描述

栈和卡特兰数

在这里插入图片描述

二叉树的遍历和性质

二叉树的遍历顺序例子
先序遍历根,左,右ABCDEF
中序遍历左,根,右CBDAEF
后序遍历左,右,根CDBEFA

在这里插入图片描述
应用:前缀表达式,中缀表达式,后缀表达式的转换

二叉树性质
二叉树第 i 层至多有 2 i − 1 2^{i-1} 2i1个结点数
深度为 k至多有 2 k − 1 2^{k}-1 2k1个结点
叶子结点数 n 0 n_{0} n0,度为2的结点数 n 2 n_{2} n2,n0 = n2 + 1

证明:设n1为度数为1,n2为度数为2,n0为叶子结点数,n为结点数
n 1 + n 2 + n 0 = n n1 + n2 + n0 = n n1+n2+n0=n
1 + 2 ∗ n 2 + n 1 = n 1 + 2*n2 + n1 = n 1+2n2+n1=n
所以 n 0 = n 2 + 1 n0 = n2 + 1 n0=n2+1

满二叉树性质(定义)
深度为 k有 2 k − 1 2^{k}-1 2k1个结点
完全二叉树性质
除了最下层,其他每层都饱满,最下层的结点都集中在该层最左边的若干位置
没有左儿子,就一定没有右儿子
儿子结点编号 /2 为父亲编号,若父亲编号A,左儿子2A,右儿子2A+1
n个结点,深度为 l o g 2 log_{2} log2n+1 取整

在这里插入图片描述

哈夫曼树和哈夫曼编码

类似合并果子:洛谷#1090合并果子
每次选取权值最小的两个点连为一个点,两者和为新点的权值。
在这里插入图片描述

路径长度PL树根到树的每个节点的路径长度(长度皆为1)之和完全二叉树最短
带权路径长度WPL树的所有叶子节点的带权长度(该节点到根节点路径长度与节点上权的乘积)哈夫曼树最短

在这里插入图片描述

哈夫曼编码:

字母出现的次数作为权值,进行哈夫曼树的构造,左为0,右为1,从根沿每条路径到达叶子节点的代码排列起来,便得到了哈夫曼编码。
在这里插入图片描述
在这里插入图片描述

高精度

在这里插入图片描述

排序

在这里插入图片描述

时间复杂度计算
时间复杂度概述
代入值为1e6是安全的
O ( n ) O(n) O(n)部分贪心
O O O(nlog 2 _{2} 2n)带有分治思想的部分算法
O O O(n 2 ^{2} 2)部分动态规划
O O O(n 3 ^{3} 3)部分动态规划,部分搜索算法
O O O(n ! ! !)部分搜索算法
O ( m ∗ n ) O(m*n) O(mn)遍历矩阵等
省时间省空间
位运算,+ - 比 * / % 快压缩存储,重复利用,尽量用int,不用long long

在这里插入图片描述

在这里插入图片描述

原码、补码、反码

在这里插入图片描述

32位二进制,最高位 0表示正 1表示负
原码首位符号位,其余真值
反码正数与原码一样
反码负数符号位和原码一样,其他位相反
补码正数与原码一样
补码负数等于反码加一

最高位不进位,超过取模 2 32 2^{32} 232
在这里插入图片描述
在这里插入图片描述

数据结构基础

算法 + 数据结构 = 程序
在这里插入图片描述

数据结构体系

在这里插入图片描述
在这里插入图片描述

四类基本结构
集合结构线性结构树形结构图形结构
同属一个集合一对一的关系一对多的关系多对多的关系
线性结构

顺序存储结构(数组)
链式存储结构(链表)
数组和线性表
栈和卡特兰数
队列:允许插入的一端称为队尾(rear),允许删除的一端称为队头(front)
循环队列:头指针指向队列中队头元素的前一个位置,尾指针指示队尾元素在队列中的当前位置

树型结构

结点的度:结点拥有的子树数

图形结构

见下面 “ “ 图论算法基础 ” ”
在这里插入图片描述
在这里插入图片描述

数论算法基础

初赛数论内容:

基本概念知识
最大公约数,最小公倍数
扩展欧几里得
欧拉函数
素数筛法
费马小定理
威尔逊定理
乘法逆元
中国剩余定理
线性同余方程
在这里插入图片描述

组合数学基础

初赛组合数学内容:

组合数
栈和卡特兰数
加法原理
乘法原理
鸽巢原理
容斥原理
数列(等差,等比,斐波那契)
在这里插入图片描述

图论算法基础

在这里插入图片描述

计算几何基础

在这里插入图片描述

基本算法思想

数据结构 + 算法 = = = 程序
数据结构:数据的类型,数据的组织形式
算法:对程序操作流程的描述
在这里插入图片描述

算法基本思想适用条件算法优化优点缺点应用
枚举穷举所有可能解明确的解空间剪枝易理解效率低排列,子集
递推寻找规律推式子关系,边界条件明显速度快思路难组合计数,博弈,DP
递归调用本身有明确递归结束条件变参–>全局结构清晰可读效率低,易爆内存分治,DFS
分治大事化小最优子结构,子问题独立可合并二分,排序,点对
贪心考虑局部最优无后效性部分背包
回溯DFS返回DFS迭代加深DFS
动态规划多阶段决策最优化无后效性,重叠子问题,最优子结构记录中间状态背包,区间,树

在这里插入图片描述

枚举

NOIP2016玩具谜题
NOIP2014生活大爆炸版石头剪刀布
在这里插入图片描述

五种典型递推关系:
1.Fibonacci数列

代表:兔子繁殖问题
公式: F(n) = F(n-1)+F(n-2)
边界条件 F ( 0 ) = 0 F(0)=0 F(0)=0, F ( 1 ) = 1 F(1)=1 F(1)=1

2.Hanoi问题

Hanoi问题是可以拓展的,比如4根柱子,5根柱子……甚至1500根柱子!
题目来自一次校内模拟题T2(感兴趣可自行查阅)

3.平面分割问题

设有 n n n条封闭曲线画在平面上,任何两条封闭曲线恰好交于两点,任何三条封闭曲线不相交于同一点,问这些封闭曲线把平面分割成的区域个数
公式: A(n) = A(n-1)+2(n-1)

4.Catalan数

见上面

5.第二类Stirling数

n n n个有区别的球放到 m m m个相同的盒子中,要求无一空盒,其方案数用 S ( n , m ) S(n,m) Sn,m表示,称为第二类 S t i r l i n g Stirling Stirling
公式: S2(n,m) = mS2(n-1,m)+S2(n-1,m-1)
边界条件: S 2 ( n , 0 ) = 0 S2(n,0) =0 S2(n,0)=0 S 2 ( n , 1 ) = 1 S2(n,1)=1 S2(n,1)=1 S 2 ( n , n ) = 1 S2(n,n)=1 S2(n,n)=1, S 2 ( n , k ) = 0 S2(n,k)=0 S2(n,k)=0 ( k > n ) (k > n) (k>n)
在这里插入图片描述

递归

DFS算法优化

最优化剪枝
可行性剪枝
记忆化搜索
改变搜索顺序
优化搜索策略
预处理
改写*IDA算法

BFS算法优化
判重优化:hash,二叉排序树
双向BFS或启发式搜索
改写A*算法
二分优化

迭代加深搜索
通过限定下限k,然后允许深度优先搜索k层,一旦没有找到有效解,则增大下界

DFSBFS
优点适合回溯启发式更易实现
参数传递,状态修改恢复方便能立刻停止
自项向下处理解决“最小步数”“深度最小”问题
记忆化搜索容易迅速找到答案小的解
缺点栈易溢出空间消耗大
不容易输出方案状态重复排除耗时多
不易立即结束搜索

在这里插入图片描述

分治

NOIP2012借教室
NOIP2013转圈游戏
在这里插入图片描述

贪心

NOIP2012国王游戏
NOIP2013积木游戏
NOIP2015跳石头
在这里插入图片描述

回溯

素数环问题
在这里插入图片描述

动态规划

背包型动态规划:POJ1014POJ1068
序列型动态规划 :POJ1044POJ1576POJ3027
区间型动态规划:POJ1048POJ1154POJ1166
棋盘型动态规划:POJ1010POJ1169POJ1219POJ1220
划分型动态规划:POJ1017POJ1039POJ1040
树型动态规划:POJ1163POJ1380
在这里插入图片描述
在这里插入图片描述

计算机文化基础

在这里插入图片描述

计算机系统原理

接收和存储信息,按程序快速计算,判断并输出处理结果
在这里插入图片描述
在这里插入图片描述
主要技术指标:
字长:
32位CPU:
64位CPU:
主频:
运算速度:
存储容量:
在这里插入图片描述
容量换算
在这里插入图片描述
除了 b b b——>B是8倍,其他都是1024倍(注意,Kb与KB不同,其他同理)
在这里插入图片描述冯·诺依曼体系结构
在这里插入图片描述
组成部分:
中央处理器(CPU):
运算器:
控制器:
存储器:
二级缓存
内存:
主存:
外存:
硬盘:
光盘:
外设:
在这里插入图片描述
总线与接口
在这里插入图片描述
软件

在这里插入图片描述

在这里插入图片描述

计算机网络基础

在这里插入图片描述

网络的定义

计算机网络是由地理位置分散的、具有独立功能的多个计算机系统,经通讯设备和线路互相连接,并配以相应的网络软件,以实现通信和资源共享的系统
在这里插入图片描述

网络的功能
信息交换计算机最基本的功能系统通信:传送电子邮件,发布新闻消息,电子购物,电子贸易,远程电子教育
资源共享资源包括软硬件资源增强网络上计算机的处理能力,提高计算机软硬件率用率
分布式处理复杂内容划分后完成增强系统性能

在这里插入图片描述

网络拓扑结构
总线拓扑星型拓扑环型拓扑树型拓扑网状拓扑混合拓扑蜂窝拓扑

在这里插入图片描述

计算机网络系统
硬件系统
服务器负责网络资源管理和用户服务的计算机,网络系统核心设备,分类(文件,远程访问,数据库,打印)
工作站具有独立处理能力的计算机,用户向服务器申请服务(如传输文件、打印文件的终端设备)
网卡网络适配器,计算机之间传输介质互相通信的接口,插在扩展槽中,将数字信号转换成电子或电磁信号
调制解调器 M o d e m Modem Modem信号转换装置,将计算机的数字信号与通信线路的模拟信号相互“调制”,连接计算机与公用电话线
集线器 H u b Hub Hub局域网连接设备,具有多个端口可连接多台计算机,宽带共享
交换机模拟用网桥连接各个网络的方式工作
网桥 B r i d g e Bridge Bridge局域网使用的连接设备,扩展网络距离,减轻网络负载,排除非本网段的信号,使信号高效使用信道
路由器 R o u t e r Router Router互联网使用的连接设备,可以连接网络,有网桥所有功能,还具有路径的选择功能
网关复杂的网络连接设备,工作在OSI高三层,连接异构网络,转换不兼容的高层协议
软件系统
数据通信软件通信功能 M S N MSN MSN Q Q QQ QQ
网络操作系统控制和管理网络资源的软件 W i n d o w s Windows Windows U n i x Unix Unix L i n u x Linux Linux
网络应用软件网络能够为用户提供服务的 “ “ 软件 ” ” 浏览查询软件,传输文件,远程登录软件,电子邮件
网络信息系统
按地理范围分
局域网LAN
城域网MAN
广域网WAN
按传输速率分传输速率的单位 b p s bps bps
低速网 K b p s − M b p s Kbps-Mbps KbpsMbps
高速网 M b p s − G b p s Mbps-Gbps MbpsGbps
按照传输信道的宽度分带宽单位 H z Hz Hz
窄带网 K H z − M H z KHz-MHz KHzMHz
宽带网 M H z − G H z MHz-GHz MHzGHz

∗ * 带宽指传输信道的宽度

按传输介质分
有线网有线介质(双绞线,同轴电缆,光导纤维)
无线网无线介质(移动通信网(3G、4G、5G、GPRS)、无线局域网(WiFi)、微波,激光,红外线)

在这里插入图片描述

OSI模型

I S O ISO ISO(国际标准化组织) 1981 1981 1981推出 “ “ 开放系统互联结构模型 ” ” O S I OSI OSI标准
O S I OSI OSI将网络协议规范化了的逻辑参考模型,是一个标准,不是特定的协议或系统
在这里插入图片描述
在这里插入图片描述

I n t e r n e t Internet Internet国际计算机互联网

世界上规模最大的计算机网络
1994.4 1994.4 1994.4加入
1997.4.26 1997.4.26 1997.4.26
C S T n e t CSTnet CSTnet(科技网)、 C E R n e t CERnet CERnet(教育科研网)、 C H I N A n e t CHINAnet CHINAnet(中国互联网)、 c h i n a G B N chinaGBN chinaGBN G o l d B r i d g e Gold Bridge GoldBridge 金桥网)相互连通
在这里插入图片描述

浏览器

可以显示网页服务器或者文件系统的 H T M L HTML HTML(超文本标记语言)文件
常见浏览器:XX浏览器(QQ、搜狗、UC等)、 I n t e r n e t Internet Internet E x p l o r e r Explorer Explorer F i r e f o x Firefox Firefox S a f a r i Safari Safari O p e r a Opera Opera G o o g l e Google Google C h r o m e Chrome Chrome
在这里插入图片描述

网络协议

计算机网络中一系列的通信规则和约定的集合
I n t e r n e t Internet Internet的核心协议: T C P / I P TCP/IP TCP/IP
局域网使用: I P X / S P X IPX/SPX IPX/SPX

T C P / I P TCP/IP TCP/IP

传输控制协议、因特网互联协议,网络通讯协议
最为成功的网络体系结构和协议规范
这是一组协议,包括上百个各种功能的协议,其中 T C P TCP TCP I P IP IP是最核心的两个协议
I P IP IP协议适用于所有类型的网络
T C P TCP TCP协议处理 I P IP IP协议所遗留的通信问题,为应用程序提供可靠的通信连接,并能自动适应网络的变化
在这里插入图片描述
PS.IP地址即使在初赛出现也只有一道选择,内容却繁琐难度较大,建议略过,时间充裕可学

IP地址
IPv4 32位
IPv6 128位
类别首字节地址范围缺省子网掩码
A类网01.0.0.0~127.255.255.255255.0.0.0
B类网10128.0.0.0~191.255.255.255255.255.0.0
C类网110192.0.0.0~223.255.255.255255.255.255.0
D类网1110224.0.0.0~239.255.255.255
E类网11110240.0.0.0~247.255.255.255
私有IP

10.0.0.0 10.0.0.0 10.0.0.0 ~ 10.255.255.255 10.255.255.255 10.255.255.255
172.16.0.0 172.16.0.0 172.16.0.0 ~ 172.31.255.255 172.31.255.255 172.31.255.255
192.168.0.0 192.168.0.0 192.168.0.0 ~ 192.168.255.255 192.168.255.255 192.168.255.255

子网掩码
网络号主机地址
划分子网
域名

通用最高层域名 e d u edu edu(教育、科研机构) 、 c o m com com(商业机构) 、 n e t net net(网络服务机构) 、 i n f o info info(信息服务机构) 、 o r g org org(专业团体) 、 g o v gov gov(政府机构)
国际最高层域名 i n i ini ini(国际性组织或机构)
国家最高层域名

Com商业机构CN中国
EDU教育机构JP日本
GOV政府机构HK香港
Int国际机构UK英国
Mil军事机构CA加拿大
Net网络服务机构DE德国
org非赢利机构FR法国

D N S DNS DNS域名管理服务器
在这里插入图片描述

常用缩写

H T T P HTTP HTTP 超文本传输协议
H T M L HTML HTML 超文本标记语言
F T P FTP FTP 文件传输协议
T e l n e t Telnet Telnet 远程登录
S M T P SMTP SMTP P O P 3 POP3 POP3 简单邮件传输协议(发送收电子邮件,接收电子邮件)
U R L URL URL 统一资源定位符
在这里插入图片描述

在这里插入图片描述

计算机病毒防治

计算机病毒是一种程序

通过修改其他程序,将自身的精确拷贝或者可能演化的拷贝插入其他程序,从未感染其它程序。
利用计算机软件和硬件所固有的脆弱性编制的一组指令集或程序代码。

1994.2.18,我国正式颁布《中华人民共和国计算机信息系统安全保护条例》:
计算机病毒,是指编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码”。
在这里插入图片描述
计算机病毒特性
繁殖性、破坏性、潜伏性、隐蔽性、可触发性、传染性(通过软盘、硬盘、移动硬盘、计算机网络等)在这里插入图片描述
计算机病毒危害
1.破坏数据、信息
2.占用磁盘
3.抢占系统资源
4.影响计算机运行速度
5.计算机病毒错误与不可预见的危害
6.计算机病毒的兼容性对系统运行的影响
7.给用户带来心理压力
8.业务损失
9.法律问题
在这里插入图片描述
计算机分类

按病毒存在的媒体分类

网络病毒通过计算机网络感染网络中的可执行文件
文件病毒感染计算机中的文件(如COM,EXE,DOC等)
引导型病毒感染启动扇区(Boot)和硬盘的系统引导扇区(MBR)
混合型病毒上述三种情况混合

按病毒传染的方法分类

引导扇区传染病毒使用病毒的全部或部分代码取代正常的引导记录,隐藏正常的引导记录
执行文件传染病毒寄生在可执行程序中,程序执行即激活
网络传染病毒当前病毒主流,通过互联网传播

按病毒的破坏能力分

无害型减少磁盘的可用空间
无危险型减少内存,显示图像,发出声音及同类音响
危险型在计算机系统操作中造成严重的错误
非常危险型删除程序,破坏数据,清除系统内存区和操作系统中的重要信息

按病毒算法分类

伴随型病毒不改变文件,产生EXE的伴随体,DOS加载时优先执行伴随体,再由伴随体加载执行原来的EXE文件
蠕虫型病毒不改变文件和资料信息,利用网络,从内存转移到另一机器内存,计算网络地址,将病毒通过网络发送
寄生型病毒依附在系统的引导扇区或文件中,通过系统的功能传播
练习型病毒病毒自身包含错误,不能很好地传播
变形病毒传播过程中会改变内容和长度

按计算机病毒的链接方式分类

源码型病毒攻击高级语言编写的程序,在程序编译前插入源程序,成为合法的一部分
嵌入型病毒将自身嵌入现有程序,把计算机病毒的主体程序与攻击对象以插入的方式链接
外壳型病毒包围在主程序四周,易于编写,易于发现,可以通过测试文件大小发现
操作系统型病毒将自身程序加入或取代部分操作系统进行工作,可以导致整个系统瘫痪(圆点病毒,大麻病毒)

按病毒攻击操作系统分类

Microsoft DOS
Microsoft Windows95/98/ME
Microsoft WindowsNT/2000/XP
Unix(Linux)
Macintosh(MacMag病毒,Scores病毒)
OS/2(AEP病毒)

在这里插入图片描述
计算机病毒典型人物

时间人物事件
1983.11.03弗雷德·科恩博士研制成第一个计算机病毒(Unix),伦·艾德勒曼将它命名为计算机病毒
1988.11.02莫里斯(康奈尔大学)将蠕虫病毒放入互联网
1998.5陈盈豪(台湾大学)CIH病毒,又名切尔诺贝利
2003.8.29杰弗里·李·帕森冲击波电脑病毒制造者,被捕
2007李俊(武汉新洲区人)熊猫烧香病毒

在这里插入图片描述
计算机病毒命名规则(CARO命名规则)
1.病毒家族名+病毒组名+大变种+小变种+修改者
2.加前缀标明病毒类型(WM,Win32,VBS)
在这里插入图片描述
计算机病毒防治技术:
特征码扫描法,虚拟执行技术,智能引擎技术,计算机监控技术,未知病毒查杀技术,压缩智能还原技术,多层防御,集中管理技术,病毒免疫技术

常见防病毒软件:
金山毒霸,瑞星杀毒, K V 3000 KV3000 KV3000 , P C − C i l l i n V i r u s B u s t e r PC-Cillin VirusBuster PCCillinVirusBuster , N o r t o n A n t i V i r u s Norton AntiVirus NortonAntiVirus,
F − S e c u r e A n t i v i r u s F-Secure Antivirus FSecureAntivirus , M c a f e e V i r u s S c a n Mcafee VirusScan McafeeVirusScan , N o d 32 Nod32 Nod32 , K a s p e r s k y A n t i v i r u s Kaspersky Antivirus KasperskyAntivirus

主要防病毒组织:
Wildlist国际组织、病毒公告牌、29A病毒技术组织、亚洲反病毒研究者协会( A V A R AVAR AVAR)、国家计算机病毒应急处理中心,病毒观察,中国绿盟,安全焦点,病毒资讯网,国际计算机安全联合会( I C S A ICSA ICSA
在这里插入图片描述

在这里插入图片描述

计算机信息处理

在这里插入图片描述
基于计算机的信息处理过程
1.信息采集和表示:数字,字符,声音,图形,图像(计算机编码技术)
2.信息存储:存储器的分类,管理,访问等(计算机软硬件系统)
3.信息管理:采集,处理,输出(计算机程序设计)
4.信息组织:(计算机数据库技术)
5.信息传输,信息检索:(计算机网络技术)
在这里插入图片描述

数制转换

见上
在这里插入图片描述

原码,补码,反码

见上
在这里插入图片描述

字符
ASCII

美国信息交换标准代码,国际上通用的微型机编码
由8位二进制数组成,其中最高位为较验位,用于传输过程检验数据正确性,其余七位表示一个字符

GB1988

我国据ASCII码制定,52个英文字母,32个标点符号,运算符和34个控制字符,D7恒为0

GB2312

汉字交换码
用于汉字外码和内码的交换
每个字符由一个2个字节的代码组成,高字节表示区号,低字节表示位号

汉字的机内码
在计算机内部传输,存储,处理的汉字编码
字节最高位为 “ 1 ” “1” 1为汉字符,为 “ 0 ” “0” 0 A S C I I ASCII ASCII字符
机内码在国际码的基础上将两个字节的最高位一律由 “ 0 ” “0” 0 “ 1 ” “1” 1

汉字的输入码
输入码为外码
数字编码,拼音码,字形码,音形码
无论采用哪一种汉字输入法,当用户向计算机输入汉字时存入计算机的总是它的机内码
各种汉字输入码(外码)===> 键盘管理程序 ===> 统一的汉字机内码(内码)

汉字的字形码
表示汉字字形信息(结构,形状,笔划)的编码,用于实现计算机对汉字的输出(显示,打印)
最常用的表示方式:点阵形式,用二进制的 “ 0 ” " 1 " “0”"1" 0"1"表示暗亮。
字模码占的的字节数由汉字的字形决定

简易型16*1632字节
普通型24*2472字节
提高型32*32128字节
精密型48*48288字节
BIG5

繁体字

GB18030
Unicode

汉字处理过程
输入 ===> 输入码(外码) ===> 键盘管理程序(输入法) ===> 汉字机内码(内码) ===> 字形码 ===>输出
在这里插入图片描述

计算机中多媒体的表示方式

多媒体信息:声音,图形(矢量图),图像(静态图像——位图,视频图像)等
模拟信号:时间和幅度上都是连续变化的信号
数字信号:时间和幅度上都是离散的信号

声音信息的数字化(将连续变化的音频信号转换为时间和幅度都是离散的数字表示的信号)

模拟信号
模拟声音信号 ==> 采样 ==> 量化 ==> 编码 == >数字声音信号
采样
在某些特定的时刻对这种模拟信号进行测量叫做采样
采样所得到的信号称为离散时间信号(时间上离散,幅度上连续)
量化
把信号幅度取值的数目加以限定,由有限个数值组成的信号就称为离散幅度信号。
编码
用预先规定的方法将文字,数字或其他对象编成数码,或将信息,数据转换成规定的电脉冲信号。
信息只有经过数字化编码后才能表示,存放和传递
采样频率
单位时间的采样次数
采样精度(样本位数)(位深度)
采样频率越高,采样精度越高,信号失真度越小,所得数据占用的存储空间越大
声音文件的数据量
声音文件的数据量=采样频率( H z Hz Hz) * 样本精度( b i t bit bit) * 声道数 * 时间( s s s

图像信息的数字化

采样 ==> 量化 ==> 编码
采样
空间连续坐标(x,y)的离散化 ==> 像素点
量化
幅度f(x,y)的离散化 == > 灰度级的整量(明暗程度,色彩度) ==> 用若干位二进制码表示一个像素点的灰度值
数字图像:空间上和灰度级上都离散的图像。
图像采样的点数称为图像分辨率,用点的“行数*列数”
表示每个像素颜色使用的二进制位数称为像素深度位深度(1位,4位,8位,24位,32位)
图像文件大小
图像文件的大小=位深度 * 像素数
B M P BMP BMP(不压缩), G I F GIF GIF(压缩效率高,存储空间小), J P E G JPEG JPEG(有损压缩)

图形(矢量图)信息的数字化

在这里插入图片描述

计算机程序设计语言
组成特点
机器语言“0” “1”计算机能直接识别执行,不同机型计算机不相通
汇编语言(符号语言)英文字母,符号串面向具体机型,不同种类计算机不相通PUSH AX、PUSH BX、POP AX、BX、ADD CX、
高级语言面向对象,只要配备相应的高级语言的编译或解释程序,就通用BASIC、Pascal、C、C++、VC、VB、Delphi、JAVA

高级语言
接近算法语言
为程序员提供结构化程序设计的环境和工具,是得设计出来的程序可读性好,可维护性强,可靠性高
高级语言与计算机硬件较远,具有可移植性,重用率高
自动化程度高,开发周期短

应用角度基础语言(通用语言)FORTRAN、COBOL、BASIC、ALGOL
结构化语言PASCAL、C、Ada直接支持结构化的控制结构
专用语言APL、Forth、LISP为某种特殊应用而专门设计
描述客观系统面向过程语言大多数数据结构+算法
面向对象语言Delphi、Visual Basic、Java、C++对象+消息

程序设计语言发展趋势
模块化、简明性、形式化
在这里插入图片描述
C++常用STL结构与函数

∗ ∗ s o r t **sort sort

排序
s o r t ( v . b e g i n ( ) , v . e n d ( ) , m y c m p ) ; sort(v.begin(),v.end(),mycmp); sort(v.begin(),v.end(),mycmp)
左闭右开

∗ ∗ l o w **low low _ b o u n d bound bound

l o w low low _ b o u n d bound bound ( v . b e g i n ( ) , v . e n d ( ) , c ) (v.begin(),v.end(),c) (v.begin(),v.end(),c)
在一个有序数组里找出刚好大于等于c的数
u p p e r upper upper _ b o u n d bound bound ( v . b e g i n ( ) , v . e n d ( ) , c ) (v.begin(),v.end(),c) (v.begin(),v.end(),c)
在一个有序数组里找出刚好大于c的数

∗ ∗ N e x t **Next Next_ p e r m u t a t i o n permutation permutation

p r e v prev prev _ p e r m u t a t i o n permutation permutation ( v . b e g i n ( ) , v . e n d ( ) ) (v.begin(),v.end()) (v.begin(),v.end())
可用于求出当前v数组序列的上一个排列
N e x t Next Next _ p e r m u t a t i o n permutation permutation ( v . b e g i n ( ) , v . e n d ( ) ) (v.begin(),v.end()) (v.begin(),v.end())
可用于求出当前v数组序列的下一个排列

∗ ∗ V e c t o r **Vector Vector

代表一个不定长数组
V e c t o r < T y p e > A Vector< Type > A Vector<Type>A
A . c l e a r ( ) A.clear() A.clear()清空
A . p u s h A.push A.push_ b a c k ( ) back() back()尾部添加元素
A . p o p A.pop A.pop_back()$尾部删除元素
A . e m p t y ( ) A.empty() A.empty()检查是否为空,空返回 f a l s e false false

∗ ∗ S e t **Set Set

一个存储集合的容器
s e t < T y p e > A set< Type > A set<Type>A
A . i n s e r t ( ) A.insert() A.insert()插入a
A . e r a s e ( ) A.erase() A.erase()删除a
A . f i n d ( ) A.find() A.find()查找a,如果查找成功返回对应指针,查找失败返回尾指针
A . b e g i n ( ) A.begin() A.begin()返回头指针
A , e n d ( ) A,end() A,end()返回尾指针,尾指针不存储具体内容

∗ ∗ M a p **Map Map

存储 k e y key key v a l u e value value的映射
m a p < T y p e 1 , T y p e 2 > A map< Type1,Type2> A map<Type1,Type2>A
T y p e 1 Type1 Type1 k e y key key 类型, T y p e 2 Type2 Type2 v a l u e value value 类型
可以通过 A [ B ] = C A[B]=C A[B]=C 这种形式赋值, B B B T y p e 1 Type1 Type1 C C C T y p e 2 Type2 Type2
A . c l e a r ( ) A.clear() A.clear()清空
A . e r a s e ( B ) A.erase(B) A.erase(B)删除(B可以是key值也可以是指针)
A . e m p t y ( ) A.empty() A.empty()判断是否为空
A . b e g i n ( ) A.begin() A.begin()头指针
A , e n d ( ) A,end() A,end()尾指针

∗ ∗ P a i r **Pair Pair

一个包含两个可以不同的数据值的类型
p a i r < T y p e 1 , T y p e 2 > A pair< Type1,Type2> A pair<Type1,Type2>A
m a k e make make _ p a i r ( t 1 , t 2 ) pair(t1, t2) pair(t1,t2)赋值
A.first, A.second;返回对应的值

∗ ∗ S t a c k **Stack Stack

模拟栈
s t a c k < T y p e > A stack < Type > A stack<Type>A
A . p u s h ( ) A.push() A.push()入栈
A . p o p ( ) A.pop() A.pop()出栈
A . t o p ( ) A.top() A.top()返回栈顶元素

∗ ∗ Q u e u e **Queue Queue

模拟队列
q u e u e < T y p e > A queue < Type > A queue<Type>A
A . p u s h ( ) A.push() A.push()入队
A . p o p ( ) A.pop() A.pop()出队
A . f r o n t ( ) A.front() A.front()返回队首元素

∗ ∗ P r i o r i t y **Priority Priority q u e u e queue queue

优先队列,一个类似堆的数据结构
P r i o r i t y Priority Priority _ q u e u e < T y p e > A queue<Type> A queue<Type>A
A . p u s h ( ) A.push() A.push()插入
A . p o p ( ) A.pop() A.pop()删除最值(默认最大值)
A . t o p ( ) A.top() A.top()返回最值

∗ ∗ B i t s e t **Bitset Bitset

处理二进制串的"数组"
b i t s e t < n > A bitset<n> A bitset<n>A (n为长度)
支持所有位运算
A . c o u n t ( ) A.count() A.count()统计1的个数
A . r e s e t ( ) A.reset() A.reset()清0
A . s e t ( ) A.set() A.set()全赋为1
A . s i z e ( ) A.size() A.size()返回位数
在这里插入图片描述

信息学奥林匹克

N O I NOI NOI:全国信息学奥赛
主办方:中国计算机协会
官方网站1
官方网站2
在这里插入图片描述
重点注意:简介,联赛大纲,编程规则,标准竞赛环境技术问题说明

必知:
背景

N O I NOI NOI 1984 1984 1984、各省五名,至少一名女选手
N O I P NOIP NOIP 1995 1995 1995
I O I IOI IOI 1989 1989 1989、2000中国北京主办,CCF承办
A P I O APIO APIO 2007 2007 2007 、中国计算机协会

1. N O I NOI NOI机试

使用的操作系统: L i n u x Linux Linux
使用的 L i n u x Linux Linux发行版: N O I NOI NOI L i n u x Linux Linux
不可使用网络(互联网,局域网)
不可私自重启电脑
选手允许使用的编程语言: C + + C++ C++ C C C(2022部分停用)、 P a s c a l Pascal Pascal(2022全部停用)
提交的有效文件类型:答案文件,源程序
比赛题目类型:非交互式程序题、交互式程序题、答案提交题
参加目的:提高水平、为国争光、增进交流、(!!不是为了得奖)

2.在 N O I NOI NOI L i n u x Linux Linux系统中

可以用来调试程序的程序: g d b gdb gdb
从字符控制台切换回桌面环境使用的快捷键: C t r l + A l t + F 7 Ctrl+Alt+F7 Ctrl+Alt+F7
默认使用的 s h e l l shell shell b a s h bash bash

3.评测系统

对程序源文件大小的限制:小于 100 K B 100KB 100KB
对程序使用内存的限制:以硬件资源为限

4.创建备份

c p cp cp m y . c my.c my.c m y c . b a k myc.bak myc.bak

5.Anjuta

继续执行的快捷键: F 4 F4 F4
单步运行 ( s t e p (step step o v e r ) over) over:快捷键: F 6 F6 F6
支持多窗口编辑的 I D E IDE IDE
C + + C++ C++ I D E IDE IDE环境: A n j u t a Anjuta Anjuta G U I D E GUIDE GUIDE

6.Lazarus

开始运行程序的快捷键: F 9 F9 F9
单步运行 ( s t e p (step step o v e r ) over) over:快捷键: F 8 F8 F8
使用单步调试 ( s t e p (step step o v e r ) over) over:在 E n v i r o n m e n t Environment Environment − > -> > D e b u g g e r Debugger Debugger O p t i o n s Options Options中配置
支持多窗口编辑的 I D E IDE IDE
P a s c a l Pascal Pascal I D E IDE IDE环境: L a z a r u s Lazarus Lazarus G U I D E GUIDE GUIDE

7.程序

方法:单步调试,使用 p r i n t print print类语句打印中间结果,读源代码
可以不使用 I D A IDA IDA环境编辑程序源代码
程序不可进行的操作:
访问网络、使用 f o r k fork fork或其他线程/进程生成函数、打开或创建题目规定以外的文件、运行其他程序

8.欢乐爆零

如果提交的答案程序中包含 N O I NOI NOI考试明确禁止使用的代码
文件名错误(只能是小写)、文件目录名错误、文件保存路径错误

9.账户

使用每场考试前工作人员下发的账户及密码

10.测试点

测试点的时间的限制含义:用户时间

11.延时

计算机硬件故障、操作系统死机

12.物品

可携带:笔,手表
不可携带:书籍,纸,U盘,手机
场地提供:草稿纸,饮用水,食品

在这里插入图片描述

历年真题

CSP初赛真题
在这里插入图片描述

经典模拟题

CSP初赛模拟

  • 20
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值