Course playlist
📘 NOI 2025 竞赛大纲 · 入门级
对标 CSP-J (非专业级软件能力认证入门组) | 难度系数范围 1 ~ 5
✨ 基于 CCF NOI 科学委员会 2025年4月发布版本
💻 基础知识与编程环境
【1】计算机的基本构成(CPU、内存、I/O设备等)
【1】Windows、Linux等操作系统的基本概念及其常见操作
【1】计算机网络和Internet的基本概念
【1】计算机的历史和常见用途
【1】NOI以及相关活动的历史
【1】NOI以及相关活动的规则
【1】位、字节与字
【1】程序设计语言以及程序编译和运行的基本概念
【1】使用图形界面新建、复制、删除、移动文件或目录
【1】使用Windows系统下的集成开发环境(例如Dev-C++等)
【1】使用Linux系统下的集成开发环境(例如Code::Blocks等)
【1】常用编译命令 g++ 的基本使用
⚙️ C++ 程序设计
📌 程序基本概念
【1】标识符、关键字、常量、变量、字符串、表达式的概念
【1】常量与变量的命名、定义及作用
【2】头文件与名字空间的概念
【2】编辑、编译、解释、调试的概念
📊 基本数据类型
【1】整数型:int、long long
【1】实数型:float、double
【1】字符型:char
【1】布尔型:bool
🔁 程序基本语句
【2】cin语句、scanf语句、cout语句、printf语句、赋值语句、复合语句
【2】if语句、switch语句、多层条件语句
【2】for语句、while语句、dowhile语句
【3】多层循环语句
🧮 基本运算
【1】算术运算:加、减、乘、除、整除、求余
【1】关系运算:大于、大于等于、小于、小于等于、等于、不等于
【1】逻辑运算:与(&&)、或(||)、非(!)
【1】变量自增与自减运算
【1】三目运算
【2】位运算:与(&)、或(|)、非(~)、异或(^)、左移(<<)、右移(>>)
📐 数学库常用函数
【3】绝对值函数、四舍五入函数、下取整函数、上取整函数、平方根函数、常用三角函数、对数函数、指数函数
🏗️ 结构化程序设计
【1】顺序结构、分支结构和循环结构
【2】自顶向下、逐步求精的模块化程序设计
🔤 字符串的处理
【2】字符串数组与相关函数
【2】string类与相关函数
🔄 函数与递归
【2】函数定义与调用、形参与实参
【3】传值参数与传引用参数
【2】常量与变量的作用范围
【2】递归函数
🧩 结构体与联合体
【3】结构体
【3】联合体
📍 指针与引用
【4】指针
【4】基于指针的数组访问
【4】字符指针
【4】指向结构体的指针
【5】引用
📁 文件及基本读写
【2】文件的基本概念、文本文件的基本操作
【2】文本文件类型与二进制文件类型
【2】文件重定向、文件读写等操作
📦 STL 模板
【3】常用函数与算法模板:min、max、swap、sort
【4】栈(stack)、队列(queue)、链表(list)、向量(vector)等容器
🗂️ 数据结构
🔗 线性结构
【3】链表:单链表、双向链表、循环链表
【3】栈
【3】队列
🌳 简单树
【3】树的定义与相关概念
【4】树的表示与存储
【3】二叉树的定义与基本性质
【4】二叉树的表示与存储
【4】二叉树的遍历:前序、中序、后序
🎄 特殊树
【4】完全二叉树的定义与基本性质
【4】完全二叉树的数组表示法
【4】哈夫曼树的定义和构造、哈夫曼编码
【4】二叉搜索树的定义和构造
📊 简单图
【3】图的定义与相关概念
【4】图的表示与存储:邻接矩阵
【4】图的表示与存储:邻接表
🧠 算法
📖 算法概念与描述
【1】算法概念
【2】算法描述:自然语言描述、流程图描述、伪代码描述
【1】枚举法
【1】模拟法
⚡ 基础算法
【3】贪心法
【3】递推法
【4】递归法
【4】二分法
【4】倍增法
📈 算法策略
【3】前缀和
【4】差分
🔢 数值处理算法
【4】高精度的加法
【4】高精度的减法
【4】高精度的乘法
【4】高精度整数除以单精度整数的商和余数
📊 排序算法
【3】排序的基本概念
【3】冒泡排序
【3】选择排序
【3】插入排序
【3】计数排序
🔍 搜索算法
【5】深度优先搜索 (DFS)
【5】广度优先搜索 (BFS)
🗺️ 图论算法
【4】深度优先遍历
【4】广度优先遍历
【5】泛洪算法 (Flood Fill)
📈 动态规划
【4】动态规划的基本思路
【4】简单一维动态规划
【5】简单背包类型动态规划
【5】简单区间类型动态规划
📐 数学与其他
🔢 数及其运算
【1】自然数、整数、有理数、实数及其算术运算
【1】进制与进制转换:二进制、八进制、十进制、十六进制
📚 初等数学
【1】代数(初中部分)
【1】几何(初中部分)
🔢 初等数论
【3】整除、因数、倍数、指数、质(素)数、合数
【3】取整
【3】模运算与取余
【3】整数唯一分解定理
【3】辗转相除法(欧几里得算法)
【4】素数筛法:埃氏筛法与线性筛法
🧩 离散与组合数学
【2】集合
【2】加法原理
【2】乘法原理
【4】排列
【4】组合
【4】杨辉三角
💡 其他
【2】ASCII码