计算机二级公共基础知识ppt课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国计算机等级考试
二级公共基础知识
.
1
第一章 数据结构与算法(30%)
考试大纲
1. 算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复 杂度)。
2. 数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表 示;线性结构与非线性结构的概念。
3. 线性表的定义;线性表的顺序存储结构及其插入与删除运算。 4. 栈和队列的定义;栈和队列的顺序存储结构及其基本运算。 5. 线性单链表、双向链表与循环链表的结构及其基本运算。 6. 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序 和后序遍历。
1. 数据集合中各数据元素之间的逻辑关系,即 数据的逻辑结构。
2. 在对数据进行处理时,各数据元素在计算机 中的存储关系,即数据的存储结构。
3. 对各种数据结构进行的运算。
.
8
数据的逻辑结构
数据逻辑结构是对数据 元素之间存在的逻辑关 系的描述,它可以用一 个数据元素的集合和定 义在此集合上的若干关 系表示。
非线性结构
非线性结构的逻辑特征是:一个结点可能有多个直接 前驱和直接后继,树和图都属于非线性结构。
.
11
线性表
通常以下列 n 个数据元素的序列”表示 线性表 :
(a1,a2 ,...,ai ,...,an) 序列中数据元素的个数 n 定义为线性表
的表长;n=0 时的线性表被称为空表。 称 i 为ai在线性表中的位序。
退栈:取出栈顶元素并赋值给一个指定的变量,栈顶指 针top减1。
取栈顶元素:将栈顶元素的值赋给一个指定的变量,不 删除栈顶元素,栈顶指针不变。
.
16
队列
队列是一种先进先出的线性表,它只允许在表的一端插入元 素(队尾),在另一端删除元素(队头)。通常定义头指针front 指向队头元素的前一个位置,定义尾指针rear指向队尾元素 的位置。
删除运算是指撤销结构中的某个结点。
一般情况,要删除第i(1≤i≤n)个元素,要从第i+1 个元素开始,直到第n个元素,共n-i个元素依次向 前移动一个位置。
.
14
栈
栈是限定仅在表的一端进行插入和删除操作的线性表。允许插入和 删除的一端称为栈顶,另一端称为栈底。
栈顶元素总是最后被插入的元素,从而也是最先被删除的元素;栈 底元素总是最先被插入,也是最后被删除的元素。因此,栈是一种 后进先出的线性表。
ADR(ai) = ADR(a1) + (i-1)×C
↑
↑
基地址
一个数据元素所占存储量
.
13
线性表的插入和删除运算
插入运算是指在线性表的某个指定位置增加一个 新结点。
一般情况下,要在第i(1≤i≤n)个元素之前插入一个 新元素时,首先要从最后一个元素开始,直到第i 个元素之间共n-i+1个元素依次向后移动一个位置, 然后将新元素插入到第i项。
一个算法必须保证执行有限步之后结束;
算法的每一步骤必须有确切的定义;
一个算法有0个或多个输入,以刻画运算对象的 初始情况,所谓0个输入是指算法本身定义了初 始条件; 一个算法有一个或多个输出,以反映对输入数据 加工后的结果。没有输出的算法是毫无意义的; 算法原则上能够精确地运行
.
4
算法的基本概念
算法的组成要素
的工作量。一般情况下,算法中的基本 操作重复执行的次数是问题规模n的某个 函数f(n)。
.
6
算法的复杂度
算法的空间复杂度 算法的空间复杂度是指执行这个算法所
需要的内存空间。空间复杂度作为算法 所需存储空间的量度
.
7
数据结构
利用计算机进行数据处理是计算机应用的一 个重要领域。数据结构主要研究和讨论以下 三个方面的问题:
7. 顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类 排序,插入类排序)。
.
2
知识点归纳
算法的基本概念 所谓算法是指解题方案的准确而完整的
描述。严格来说,一个算法必须具有以 下五个主要特征:
.
3
算法的基本特征
一个算法应该具有以下五个重要的特征:
有穷性 确定性 输入 输出 可行性
.
12
线性表的顺序存储
线性表的顺序存储结构用一组地址连续的存储单元依次存放线 性表中的数据元素,即以“存储位置相邻”表示“位序相继的 两个数据元素之间的前驱和后继的关系,并以表中第一个元素 的存储位置作为线性表的起始地址,称作线性表的基地址。
所有数据元素的存储位置均可由第一个数据元素的存储位置得到
.
10
线性结构和非线性结构
线性结构
在数据元素的非空有限集合中,线性结构的逻辑特征 如下:
存在一个唯一的被称为“第一个”的数据元素 存在一个唯一的被称为“最后一个”的数据元素 除第一个之外,集合中的每个数据元素均有且只有一
个直接前驱 除最后一个之外,集合中的每个数据元素均有且只有
一个直接后继
与数据在计算机中的存 储位置无关,是独立于 计算机的。
.
9
数据的存储结构
数据的存储结构是数据元素及其关系在计算机存储器中 的表示。存储结构的主要内容是指在存储空间中使用一 个存储结点来存储一个数据元素,在存储空间中建立各 存储结点之间的关联,来表示数据元素之间的逻辑关系。
常见的存储结构:
顺序Βιβλιοθήκη Baidu储结构 链式存储结构 索引存储结构 散列存储结构
算法中对数据的运算和操作
算法的控制结构
算法设计基本方法
列举法 基本运算和操作
归纳法 递推
算术运算
递归 减半递推
关系运算
回溯法
逻辑运算
控制结构
顺序 选择 循环
数据传输
.
5
算法的复杂度
算法的复杂度可分为时间复杂度和空间 复杂度,是衡量算法优劣的量度。
1.算法的时间复杂度 算法的时间复杂度是指执行算法所需要
通常用指针top指示栈顶位置,用指针bottom指示栈底位置。
入栈
出栈
栈顶 top
an
……
a2
栈底 bottom
a1.
15
栈的顺序存储及运算
用一维数组S(1:m)作为栈的顺序存储空间,m为栈 的最大容量。top=0表示栈为空,top=m表示栈 满。
栈的操作
入栈:在栈顶位置插入一个新元素,栈顶指针top加1。
队列是一种先进先出的数据结构。 向队尾插入一个元素的操作称为入队,从队头删除一个元素
的操作称为退队。
退队
A
B
C
D
E
F
Front
Rear .
入队 17
循环队列
将队列存储空间的最后一个位置绕到第一个位置,形 成逻辑上的环状空间。
二级公共基础知识
.
1
第一章 数据结构与算法(30%)
考试大纲
1. 算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复 杂度)。
2. 数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表 示;线性结构与非线性结构的概念。
3. 线性表的定义;线性表的顺序存储结构及其插入与删除运算。 4. 栈和队列的定义;栈和队列的顺序存储结构及其基本运算。 5. 线性单链表、双向链表与循环链表的结构及其基本运算。 6. 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序 和后序遍历。
1. 数据集合中各数据元素之间的逻辑关系,即 数据的逻辑结构。
2. 在对数据进行处理时,各数据元素在计算机 中的存储关系,即数据的存储结构。
3. 对各种数据结构进行的运算。
.
8
数据的逻辑结构
数据逻辑结构是对数据 元素之间存在的逻辑关 系的描述,它可以用一 个数据元素的集合和定 义在此集合上的若干关 系表示。
非线性结构
非线性结构的逻辑特征是:一个结点可能有多个直接 前驱和直接后继,树和图都属于非线性结构。
.
11
线性表
通常以下列 n 个数据元素的序列”表示 线性表 :
(a1,a2 ,...,ai ,...,an) 序列中数据元素的个数 n 定义为线性表
的表长;n=0 时的线性表被称为空表。 称 i 为ai在线性表中的位序。
退栈:取出栈顶元素并赋值给一个指定的变量,栈顶指 针top减1。
取栈顶元素:将栈顶元素的值赋给一个指定的变量,不 删除栈顶元素,栈顶指针不变。
.
16
队列
队列是一种先进先出的线性表,它只允许在表的一端插入元 素(队尾),在另一端删除元素(队头)。通常定义头指针front 指向队头元素的前一个位置,定义尾指针rear指向队尾元素 的位置。
删除运算是指撤销结构中的某个结点。
一般情况,要删除第i(1≤i≤n)个元素,要从第i+1 个元素开始,直到第n个元素,共n-i个元素依次向 前移动一个位置。
.
14
栈
栈是限定仅在表的一端进行插入和删除操作的线性表。允许插入和 删除的一端称为栈顶,另一端称为栈底。
栈顶元素总是最后被插入的元素,从而也是最先被删除的元素;栈 底元素总是最先被插入,也是最后被删除的元素。因此,栈是一种 后进先出的线性表。
ADR(ai) = ADR(a1) + (i-1)×C
↑
↑
基地址
一个数据元素所占存储量
.
13
线性表的插入和删除运算
插入运算是指在线性表的某个指定位置增加一个 新结点。
一般情况下,要在第i(1≤i≤n)个元素之前插入一个 新元素时,首先要从最后一个元素开始,直到第i 个元素之间共n-i+1个元素依次向后移动一个位置, 然后将新元素插入到第i项。
一个算法必须保证执行有限步之后结束;
算法的每一步骤必须有确切的定义;
一个算法有0个或多个输入,以刻画运算对象的 初始情况,所谓0个输入是指算法本身定义了初 始条件; 一个算法有一个或多个输出,以反映对输入数据 加工后的结果。没有输出的算法是毫无意义的; 算法原则上能够精确地运行
.
4
算法的基本概念
算法的组成要素
的工作量。一般情况下,算法中的基本 操作重复执行的次数是问题规模n的某个 函数f(n)。
.
6
算法的复杂度
算法的空间复杂度 算法的空间复杂度是指执行这个算法所
需要的内存空间。空间复杂度作为算法 所需存储空间的量度
.
7
数据结构
利用计算机进行数据处理是计算机应用的一 个重要领域。数据结构主要研究和讨论以下 三个方面的问题:
7. 顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类 排序,插入类排序)。
.
2
知识点归纳
算法的基本概念 所谓算法是指解题方案的准确而完整的
描述。严格来说,一个算法必须具有以 下五个主要特征:
.
3
算法的基本特征
一个算法应该具有以下五个重要的特征:
有穷性 确定性 输入 输出 可行性
.
12
线性表的顺序存储
线性表的顺序存储结构用一组地址连续的存储单元依次存放线 性表中的数据元素,即以“存储位置相邻”表示“位序相继的 两个数据元素之间的前驱和后继的关系,并以表中第一个元素 的存储位置作为线性表的起始地址,称作线性表的基地址。
所有数据元素的存储位置均可由第一个数据元素的存储位置得到
.
10
线性结构和非线性结构
线性结构
在数据元素的非空有限集合中,线性结构的逻辑特征 如下:
存在一个唯一的被称为“第一个”的数据元素 存在一个唯一的被称为“最后一个”的数据元素 除第一个之外,集合中的每个数据元素均有且只有一
个直接前驱 除最后一个之外,集合中的每个数据元素均有且只有
一个直接后继
与数据在计算机中的存 储位置无关,是独立于 计算机的。
.
9
数据的存储结构
数据的存储结构是数据元素及其关系在计算机存储器中 的表示。存储结构的主要内容是指在存储空间中使用一 个存储结点来存储一个数据元素,在存储空间中建立各 存储结点之间的关联,来表示数据元素之间的逻辑关系。
常见的存储结构:
顺序Βιβλιοθήκη Baidu储结构 链式存储结构 索引存储结构 散列存储结构
算法中对数据的运算和操作
算法的控制结构
算法设计基本方法
列举法 基本运算和操作
归纳法 递推
算术运算
递归 减半递推
关系运算
回溯法
逻辑运算
控制结构
顺序 选择 循环
数据传输
.
5
算法的复杂度
算法的复杂度可分为时间复杂度和空间 复杂度,是衡量算法优劣的量度。
1.算法的时间复杂度 算法的时间复杂度是指执行算法所需要
通常用指针top指示栈顶位置,用指针bottom指示栈底位置。
入栈
出栈
栈顶 top
an
……
a2
栈底 bottom
a1.
15
栈的顺序存储及运算
用一维数组S(1:m)作为栈的顺序存储空间,m为栈 的最大容量。top=0表示栈为空,top=m表示栈 满。
栈的操作
入栈:在栈顶位置插入一个新元素,栈顶指针top加1。
队列是一种先进先出的数据结构。 向队尾插入一个元素的操作称为入队,从队头删除一个元素
的操作称为退队。
退队
A
B
C
D
E
F
Front
Rear .
入队 17
循环队列
将队列存储空间的最后一个位置绕到第一个位置,形 成逻辑上的环状空间。