二级c语言基础知识pdf下载,计算机二级c语言公共基础知识最新.pdf

1、算法

算法:指解题方案的准确而完整的描述。

算法的特征:

1.可行性:算法中的每一个步骤必须能实现,算法执行的结果要能够达到预期的目的。

2.确定性

3.有穷性

4.拥有足够的情报

算法设计的基本方法:

1. 列举法

2. 归纳法

3. 递推

4. 递归:直接递归,间接递归

5. 减半递推

6. 回溯法

算法的复杂度:时间复杂度和空间复杂度

时间复杂度:执行算法所需要的计算工作量。分析方法:平均性态分析,最坏情况复杂性

分析

空间复杂度:执行算法所需要的内存空间

数据结构:是指相互有关联的数据元素的集合

主要研究:数据的逻辑结构,数据的存储结构,对各种数据结构进行的运算

主要目的:提高数据处理的效率

数据的逻辑结构:反映数据元素之间逻辑关系的数据结构

数据的存储结构:数据的逻辑结构在计算机存储空间中的存放形式

数据结构分为线性结构和非线性结构。

线性结构:1.有且只有一个根结点2.每个结点最多有一个前件,最多有一个后件。

矩阵也是一种线性表。线性表是一种线性结构。

由若干个数据项组成的数据元素成为记录,由多个记录构成的线性表称为文件。每一个学

生的情况是一个记录,学生情况的登记表是一个文件。数据项是最小的数据元素。

线性表的顺序存储:

1. 线性表中所有元素所占的存储空间是连续的

2. 线性表中各数据元素在存储空间中是按逻辑顺序依次存放的

栈是一种特殊的线性表。一端是封闭的,不允许进行插入和删除元素。允许插入和删除的

一端为栈顶。

栈是按照 “先进后出”的原则。

Top 指针指向栈顶,bottom 指针指向栈底,指针top 反映了栈中元素的变化情况。

Top=0 表示栈空,top=m 表示栈满。

入栈,退栈和读栈顶元素。

队列:指允许在一端进行插入、而在另一端进行删除的线性表。

“先进先出”的线性表。

队尾指针rear 指向队尾元素,排头指针front 指向排头元素的前一个位置。

插入元素只涉及指针rear 的变化,删除元素只涉及指针front 的变化。

循环队列的初始状态唯恐,即rear=front=m

每进行一次入队运算,队尾指针进一,当rear=m+1 时,置rear=1.

每进行一次退队运算,排头指针进一,当front=m+1 时,置front=1 ;

当front=rear 时,不能确定是队列满还是队列空。

线性表顺序存储结构的缺点:

1. 插入与删除运算的效率很低

2. 存储空间不便于扩充

3. 不便于对存储空间的动态分配。

链式存储结构:一部分用于存放数据元素值,称为数据域,另一部分用于存放指针,称为

指针域。

链式存储结构中,存储数据的存储空间可以不连续,数据结点的存储数据和数据元素之间

的逻辑关系可以不一致。

链式存储方式既可用于表示线性结构,也可用于表示非线性结构。

线性表的链式存储结构称为线性链表。

树是一种简单的非线性结构。

一个结点所拥有的后件个数称为该结点的度。

所有结点中的最大的度称为树的度。

树的结点数为树中所有结点的度之和再加1.

树的最大层次称为树的深度。

树在计算机中通常用多重链表表示。

二叉树:

1. 非空二叉树只有一个根结点

2. 每一个结点最多有两棵子树,分别称为该结点的左子树和右子树。

二叉树的基本性质:

1. 在二叉树的第k 层上,最多有2 的k-1 次方个结点。

2. 深度为m 的二叉树,最多有2 的m 次方减1 个结点。

3. 在任意一棵二叉树中,度为0 的结点总是比度为2 的结点多一个。

4. 具有n 个结点的二叉树,其深度至少为[log2 (n)]+1 。

满二叉树:除最后一层外,每一层上的所有结点都有两个子结点。

完全二叉树:除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边

的若干结点。

具有n 个结点的完全二叉树的深度为[log2(n)]+1.

二叉树通常采用链式存储结构。

二叉树的链式存储结构称为二叉链表。

二叉树的遍历:指不重复地访问二叉树中的所有结点。

前序遍历:

1. 访问根结点

2. 前序遍历左子树

3. 前序遍历右子树

中序遍历:

1. 中序遍历左子树

2. 访问根结点

3. 中序遍历右子树

后序遍历:

1. 后序遍历左子树

2. 后序遍历右子树

3. 访问根结点

知道某二叉树的后序序列和中序序列,可以唯一的恢复该二叉树,只知道前序序列和中序

序列可以唯一的恢复二叉树,只知道前序序列和后序序列,不能唯一的恢复二叉树。

顺序查找:最坏情况下为n 次

二分法查找只能用于顺序存储的有序表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值