第一章数据结构与算法
经过部分考生的调查和近年真题的总结分析,笔试部分仔细考查了算法的复杂性、数据结构的概要
阅读、堆栈、二叉树扫描、二分法探索,读者必须重点学习这一部分。
深入学习知识点:
1 .算法概念、算法时间复杂度和空间复杂度概念
2 .数据结构的定义、数据逻辑结构及物理结构的定义
3 .栈的定义及其运算、线性链表的存储方式
4 .树和二叉树概念、二叉树的基本性质、完全二叉树概念、二叉树遍历
5 .二分搜索法
6 .鼓泡排序法
1.1算法
考点1算法的基本概念
试验链接:
考点1笔试考核概率为30%,主要表现为填空题,分数为2分,该考点为知识符号内容,读者还应该知道算法中是正确的
数据的基本运算。
计算机解决问题的过程实际上正在实施某种算法,该算法称为计算机算法。
1 .算法的基本特点:具有可行性、确定性、穷举性,有足够的信息。
2 .算法的基本要素:
(1)算法中数据的运算和操作
一个算法由两个基本要素组成。 一个是数据对象的运算和操作。 二是算法的控制结构。
在一般的计算机系统中,基本的运算和操作有算术运算、逻辑运算、关系运算、数据传输四种。
)算法的控制结构)算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常包括传统流程图、N-S结构化流程图、算法描述语言等。 一个算法一般按顺序,
它结合了选择、循环三种基本控制结构。
考点2算法的复杂性
试验链接:
考点2是笔试中经常查的内容,笔试出现的概率为70%,主要以选择的形式出现,分数为2分
为了重点认识内容,读者还必须认识算法的时间复杂度和空间复杂度的概念。
1 .算法的时间复杂性
算法的时间复杂度是指运行算法所需的计算工作量。
用不同的语言实现相同的算法,用不同的编译器编译,在不同的计算机上运行是高效的
不是。 这表明,以绝对时间为单位测量算法效率是不合适的。 除了这些计算机硬件、软件相关的要素之外,
特定算法“执行工作量”的大小仅取决于问题的规模(通常用整数n表示),被认为是问题规模的信
我来数。 也就是说
的计算量=f(n ) ) ) ) ) ) ) ) ) ) ) ) )。
2 .算法的空间复杂性
算法的空间复杂性是指运行该算法所需的内存空间。
算法占用的存储区域包括算法程序占用的区域、输入的初始数据占用的存储区域和执行算法的区域
隐形音响所需的额外空间。 其中额外的空间包括算法程序执行隐形声音的工作单元,以及某种数据结构所需的附加
存储空间。 据悉,如果剩馀空间量相对于问题规模为常数,则该算法就地运行。 在很多实际问题上
为了减少算法占用的存储空间,最大限度地减少不需要的多馀空间,通常采用压缩存储技术。
故障诊断:算法工作量用什么计算?
算法工作量以算法执行的基本运算次数计算,但算法执行的基本运算次数为问题规模的函数,即算法的工作量=f
n
(),其中问题的规模。
1.2数据结构的基本概念
试验点3数据结构的定义
试验链接:
3 70% 2
考点是笔试中经常查的内容,笔试出现的概率,主要以选择的形式出现,以分数为分
为了认识内容,读者还必须认识数据的逻辑结构和存储结构的概念。
数据结构作为计算机学科,主要研究和讨论以下三个方面
(1)数据集合中各个数据要素间固有的逻辑关系,即数据的逻辑结构;
)处理数据要素时,各数据要素在计算机中存储关系,即数据的存储结构
)3)对各种数据结构的运算。
数据:表示客观事物的符号,在计算机科学中指输入计算机并由计算机程序处理的所有符号
号的总称。
数据元素:数据的基本单元,在计算机程序中通常作为一个整体来考虑和处理。
数据对象:具有相同性质的数据元素的集合,是数据的子集。
的逻辑结构描述了数据元素之间的逻辑关系,可以使用数据元素的集合和定义在此集合中定义
的几个