停课半天我学到了什么?
也是神奇,学校居然给停课,我也从教室里跑出来弄初赛了,把选择题知识点过了一遍,看出来这些东西
各种时间:
- 图灵奖 1966
- NOI 1984
- IOI 1989
- NOIP 1995
- APIO 2007
- NOIP停办:2019-2019
一些知识点:
- 编译型语言与解释型语言
- 编译型语言在运行前由编译器转换成二进制,生成可运行文件后直接运行
- 解释型语言边编译边运行
- 编译型语言代表有:C语言和C++,Pascal,VB,Fortran
- 其余所有语言基本都是解释型
- 计算机语言
- 机器语言:二进制码
- 汇编语言:基础的用字母的语言
- 高级语言
- 面向过程语言:自顶向下,模块化思想方法
- 面向对象语言:把事物抽象成类,再实例化成对象,包括属性和行为
- 面向过程语言:C,Pascal,Fortran(第一个高级语言)
- 其余基本都是面向对象语言(第一个是Smalltalk)
- 操作系统软件
- Solaris,linux,windows vista,OS/2,DOS,NOI linux,Android,Mac OS X,Unix
- 视频文件格式
- AVI,MOV,RMVB,MPEG,WMV
- 图像文件格式
- JPEG,GIF,PNG
- 原码,补码,反码
- 机器数:一个数在计算机中的表示,最高位是符号位
- 真值:一个机器数表示的数值
- 原码:符号位加上真值绝对值,类似于机器数
- 反码:正数反码为其本身,负数反码按位取反
- 补码:正数补码为其本身,负数补码为其符号位之后按位取反(反码)加1
- 小数表示
- 定点表示法:确定小数点的位置
- 浮点表示法:尾数(有效数值)和阶码(小数点位置)
- 进制
- 2-B,8-O,10-D,16-H
- 网络
- IP地址类型简记法:A-E范围 256不断折半
- LAN局域网
- MAN城域网
- WAN广域网
- 排序
- 插入排序:t==n^2,从前往后将每个数前移到第一个小于该数的位置,稳定
- 选择排序:t==n^2,每次把未排序元素中找到最小元素加入有序序列,不稳定
- 冒泡排序:t==n^2,第i次排序从后往前把i-n中的最小元素带到i位,稳定
- 希尔排序:nlog2n<t<n^s,规定步长,将序列以步长模数分组分别做插排,不稳定
- 快速排序:nlog2n<t<n^2,不断以一个数为关键字,将大于/小于该数的数集合,不稳定
- 堆 排序:nlog2n<t<nlogn打一个堆,逐个取出,不稳定
- 归并排序:log2n<t<nlogn 不断合并有序序列,稳定
各种细节:
- 地址总线访问内存从字节开始算
- 计算机基本存储单位是字节
- CPU,CACHE,主存并列
- 计算机内存不包括cache与寄存器
- CPU能直接运行机器语言
- NOI自2022起只支持c++语言(也就是当前现状)
- GB码一个中文字符占两个字节
- 完全暴力递归求斐波那契数列时间复杂度是O(2^n)或者O(f(n))