二级C语言公共基础知识.txt39人生旅稈并不是一帆风顺的,逆境失意会经常伴随着我们,但人性的光辉往往在不如意中才显示出来,希望是激励我们前进的巨大的无形的动力。40奉献是爱心,勇于付出,你一定会收到意外之外的馈赠。
公共基础部分知识
数据结构与算法
算法一-是一组严谨地定义运算顺序的规则
算法的基木要素---一是对数据对象的运算和操作,二是算法的控制结构
算法设计基木方法一-列举法、归纳法、递推、递归、减半递推
算法的复杂度---包括时间复杂度和空间复杂度
时间复杂度-一执行算法所需的计算工作量
空间复杂度-一执行算法所需的内存空间
数据结构一-相互有关联的数据元素的集合。如春、夏、秋、冬;18、11、35、23、16。。。;父亲、儿了、女儿等都是数据元素。
前件一-数据元索Z间的关系,如父亲是儿了和女儿的前件
后件-一如儿子是父亲的后件
结构-一指数据元素Z间的前后件关系
数据的逻笹结构一是指反映数据元素之间逻辑关系,而与它们在计算机屮的存储位置无关数据的存储结构(物理结构)---数据的逻辑结构在计算机存储空间中的存放形式,数据元素在计算机存储空间的位置关系可能与逻辑关系不同。
根据数据结构中各数据元素之间前后件关系的复杂程度,可将数据结构分两类一-线性结构与非线性结构
线性结构(线性表)-一满足下列两个条件(1)有且只有一个根结点(2)每一个结点最多有一个前件和麻件。则称该数据结构为线性结构,否则为非线性结构。
线性表是最简单、最常用的一种数据结构,其数据元索Z间的相对位置是线性的,艮存储方式为顺序存储的,如数组
栈一-是限定在一端进行插入与删除的线性表,一端封闭,另一端开口,其操作原则是“先进后出”,栈的运算有入栈、退栈、读栈顶元素
队列一-是指在一端进行插入(称为队尾)而在另一端进行删除(称为队头)的线性表,其操作规则是“先进先出”,其运算有入队和退队。
树一-是一种简单的非线性结构,而且是层次结构,是倒立的大树,有根结点、父结点、了结点、叶了结点。根结点在笫一层,一个结点所拥有的后件的个数称为该结点的度,所有结点屮最大的度称为树的度,树的最大层次称为树的深度。
二叉树一-(1)非空二叉树只有一个根结点(2)每一个结点嚴多有两棵了树(左子树和右了树),其存储结构为链式。
二叉树性质-一(1) K层上最多有2 (K-1)个结点(2)深度为m的二叉树最多有加个结点
(3)度为0的结点(叶了结点)比度为2的结点多一个(4)具有n个结点的二叉树,其深度至少为[Log2n]+1,其屮[Log2n]表示对Log2n取整满二叉树一-除最后一层外,其余层的结点都有两个子结点
完全二叉树-一除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点,叶了结点只可能在层次最大的两层上出现。满二叉树是完全二叉树,而完全二叉树不是满二叉树。完全二叉树有两个性质:(1)具有n个结点的完全二叉树的深度为[Log2n] +1