欢迎来到天天文库
浏览记录
ID:41578136
大小:70.38 KB
页数:10页
时间:2019-08-28
《二级公共基础题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、二级公共基础知识总结第一章数据结构与算法1.1算法算法:是一组有穷指令集,是解题方案的准确而完整的描述。其四个基本特征包括:(1)确定性,算法中每一步骤都必须有明确定义,不允许有模棱两可的解释,不允许有多义性;(2)有穷性,算法必须能在有限的时间內做完,即能在执行冇限个步骤后终止;(3)町行性,算法原则上能够精确地执行;(4)拥冇足够的情报。一是对数据对象的运算和操作;二是算法的控制结构。指令系统:一个计算机系统能执行的所有指令的集合。基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。算法的三种基本控制结构:顺
2、序结构、选择结构、循坏结构。算法慕木设计方法:列举法、归纳法、递推、递归、减半递推技术、回溯法。[法效率的度量一算法复杂度:算法时间复杂度鱼算法空间复杂度」需要的内存空间。1.2数据结构的基本概念数据结构:指相互冇关联的数据元素的集合。数据结构研究的三个方面:(1)数据集合屮各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机屮的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。数据的逻辑结构应包含:(1)表示数据元素的信息;(2)表示各数据元素Z间的前后件关系数据的存
3、储结构冇顺序、链接、索引等。线性结构的条件,(一个非空数据结构):(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。非线性结构:不满足线性结构条件的数据结构。1.3线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。奋复杂线性表屮,由若干项数据元素组成的数据元素称为记录;由多个记录构成的线性表称为文件。非空线性表的结构特征:(1)且只有一个根结点al,它无前件;(2)有且只有一个终端结点an,它无后件;(3)除根结点与终端结点外,其他所
4、有结点有口只有一个前件,也有月•只有一个后件。结点个数n称为线性表的长度,当*0时,称为空表。线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。元素ai的存储地址为:ADR(ai)=ADR(al)+(i-l)k,ADR(al)为第一个元素的地址,k代表每个元素占的字节数。顺序表的运算:杳找、插入、删除。1.4栈和队列栈:限定在一端进行插入与删除的线性表。其允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底栈按照“
5、先进后岀”(FILO)或“后进先出”(LIFO)组织数据,栈具有记忆作用。栈的存储方式有顺序存储和链式存储。栈的基本运算:(1)入栈运算,在栈顶位置插入元索;⑵退栈运算,删除元素(取出栈顶元素并赋给一个指定的变量);(3)读栈顶元素,将栈顶元素赋给一个指定的变量,此时指针无变化。队列:指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。用rear指针指向队尾,用front指针指向队头元素的前一个位置。队列是“先进先出”(FIFO)或“后进后出”(LILO)的线性表。队列运算包括:(1)入队运算:从队尾插入一
6、个元索;(2)退队运算:从队头删除一个元素。1.5树与二叉树在树结构屮,每一个单的非线性结构,其所有元素之间具有明显的层次特性0结点只有一个前件,称为父结点。没有而件的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度。二叉树的特点:(1)非空二叉树只有一个根结点;(2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。满_叉树是指除最后一
7、层外,每一层上的所有结点有两个子结点,贝IJk层上有2k・l个结点深度为m的满二叉树有2m・l个结点。完全一•叉树是指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。二叉树基本性质:(1)在二叉树的第k层上,最多有2k・l(kM:L)个结点;(2)深度为m的二叉树最多有2m・l个结点;(3)度为0的结点(即叶子结点)总是比度为2的结点多一个;(4)具冇n个结点的二叉树,其深度至少为[Iog2n]+1,K-中[Iog2n]表示取Iog2n的整数部分⑸具有n个结点的完全二叉树的深度为[Iog2n
8、]+1;⑹设完全二义树共有n个结点。如果从根结点开始,按层序(每一•层从左到右)用自然数12.」给结点进行编号(k=l,2....n),有以下结论:①若k=l,则该结点为根结点,它没有父结点;若k>l,则该结点的父结点编号为INT(k/2);②若2kWn,则k结点的左了结点编号为2k;否则该结点无左子结点(也无右子结
此文档下载收益归作者所有