以前大李并没有特别推荐过GESP等级考试,一是考到8级,经历的时间比较漫长,二是会经常出现考场事故。
但直接考CSP-J/S难度又特别大,十分打击考生信心,所以选择一个等级考试检验考生水平还是很有必要的。
现在GESP等级考试可以跳级,又降低到了7级免CSP-J初赛,那就缩短了考试的整个周期,而且举办方经验越来越足,考场事故也很少出现了,所以现在还是比较推荐GESP等级考试的。那下面,我们一起熟悉下GESP-C++方面的考试大纲吧。
C++一级大纲
考察知识点
计算机基础知识方面:计算机基础与编程环境、计算机历史。
语法知识:变量的定义与使用、基本数据类型(整型、浮 点型、字符型、布尔型)、控制语句结构(顺序、循环、选择)、基本运算(算术运算、关系运算、逻辑运算)、输入输出语句
考察目标
能够掌握顺序、循环、分支的简单程序结构,可以使用集成开发环境进行编程与调试,通过编程基础知识的学习,完成单一功能的程序设计。
C++二级大纲
考察知识点
计算机基础知识方面:计算机的存储与网络、程序设计语言的特点、流程图的概念与描述、ASCII编码
语法知识:数据类型的转换、多层分支、循环结构
常用数学函数:绝对值函数、平方根函数、max 函数、min 函数
考察目标
掌握程序基本设计,能够使用简单数学函数,可以独立完成包含分支语句、循环语句等比较综合的案例,可以 使用分支循环嵌套结构。
C++三级大纲
考察知识点
计算机基础知识方面:数据编码(原码、反码、补码)、进制转换(二进制、八进制、十进制、十六进制)、位运算(与(&)、或(|)、非(~)、异或(^)、左移 (<<)、右移(>>))、算法的概念与描述(自然语言描述、流程图描述、伪代 码描述)。
语法知识:C++一维数组基本应用、字符串及其函数
算法知识:枚举法、模拟法
考察目标
掌握数据编码、进制转换、位运算等知识,掌握一维数组、字符串及函数的使用,能够独立使用模拟法、枚举法解决对应的算法问题。
C++四级大纲
考察知识点
语法知识:函数的定义与调用、形参与实参、作用域、指针类型的概念及基本应用(值传递、引用传递、指针传递)、结构体、二维数组与多维数组基本应用。
算法知识:递推、排序算法(冒泡排序、插入排序、选择排序)、简单算法复杂度的估算(含多项式、指数复杂度)、文件重定向与文件读写操作异常处理。
考察目标
掌握函数的定义、调用及函 数参数传递的方法;掌握二 维数组与多维数组的使用技 巧;掌握常用排序算法、文 件读写和异常处理的使用。 能够解决递推相关问题。
C++五级大纲
考察知识点
数学知识:初等数论、辗转相除法、素数表的埃氏筛法和线性筛法、唯一分解定理
算法知识:高精度算法(加法、减法、乘法、除法)、链表(单链表、双链表、循环链表)、二分查找/二分答案、贪心算法、分治算法(归并排序和快速排序)、递归、算法复杂度的估算(含多项式、指数、对数复杂度)。
考察目标
掌握初等数论,线性表的知识,二分法、分治法、贪心法的思想,完成指定功能的程序,掌握数组模拟高精度的运算。
C++六级大纲
考察知识点
语法知识:面向对象的思想、类的创建
算法知识:深度优先搜索算法、宽度优先搜索算法(也称广度优先搜索算法)、简单动态规划(一维动态规划、简单背包问题)、二叉树的搜索算法
数据结构知识:树的定义(构造与遍历)、哈夫曼树、完全二叉树、二叉排序树、哈夫曼编码、格雷编码、栈、队列、循环队列。
考察目标
掌握树的基础知识,能够分辨不同的树,并根据不同的搜索算法进行遍历,掌握简单线性动态规划和简单背包问题。
C++七级大纲
考察知识点
数学库常用函数(三角、对数、指数)、复杂动态规划(二维动态规划、动态规划最值优化)、 图的定义及遍历、图论基本算法(图的深度优先遍历、广度优先遍历、泛洪算法)、哈希表。
考察目标
掌握图的定义与遍历相关算法,掌握图论基本概念及基础算法,能使用二维动态规划、动态规划最值优化的知识完成复杂的动态规划算法。
C++八级大纲
考察知识点
计数原理、排列与组合、杨辉三角、倍增法、最小生成树、kruskal算法、prim算法、单源最短路径的(dijkstra算法、Floyd算法)
考察目标
掌握组合数学中基本知识,通过算法的时间和空间效率分析,可以完成相对应的算法优化。
知识点难度递进,从大纲上看起来难度并不是很大,但实际考察内容会难上一些,所以需要对所要考察到的知识点反复练习,争取一次通过并能取得优异的成绩(可以跳级)。