计算机级vf理论资料.docVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机级vf理论资料

第一章 数据结构与算法 算法 算法:是指解题方案的准确而完整的描述。通常,程序的编制不可能优于算法。 算法的基本特征:a.可行性b.确定性c.有穷性(有限的时间、合理的执行时间)d.拥有足够的情报(一个算法的执行结果总是与输入的初始数据有关)。 算法的基本要素:一是对数据对象的运算和操作[算术运算(加减乘除)、逻辑运算(与或非)、关系运算(大于,小于,等于,不等于)、数据传输(赋值,输入,输出)],二是算法的控制结构:算法中各个操作之间的执行顺序(描述算法的工具:传统的流程图、N—S结构化流程图、算法的描述语言等;算法的三种基本控制结构:顺序、选择、循环) 算法设计的基本方法:a.列举法b.归纳法c.递推(本质上也属归纳,从初始条件出发,逐次推出所需求的结果)d.递归(基础也是归纳,分直接递归和间接递归,从算法本身到达递归边界的,通常递归算法要比递推算法清晰易读,其结构比较简练)e.减半递推技术(是工程上常用的分治法,也是归纳法的一个分支)f.回溯法 算法复杂度:一是时间复杂度(指执行算法所需要的计算工作量a.平均性态b.最坏情况复杂性);二是空间复杂度(指执行这个算法所需要的内存空间;一个算法所占用的存储空间是算法程序所占的空间、输入初始数据所占的存储空间以及算法执行过程中所需要的额外空间) 二、数据结构的基本概念 数据结构指相互有关联的数据元素的集合,其主要研究和讨论的问题:a.数据的逻辑结构b.数据的存储结构c.对各种数据结构进行的运算;目的是提高数据处理的效率(提高数据处理的速度、尽量节省在数据处理过程中所占用的计算机存储空间) 数据处理:是指对数据集合中的各元素以各种方式进行运算,包括插入、删除、查找、更改等运算,也包括对数据元素进行分析。(无序表的顺序查找与有序表的对分查找) 数据的逻辑结构:是指数据集合中各数据元素之间所固有的逻辑关系(数据结构:表示数据元素的信息、表示各数据元素之间的前后件关系)反映数据元素之间逻辑关系的数据结构。B=(D,R) 数据的存储结构是在对数据进行处理时,各数据元素在计算机中的存储关系,主要有顺序、链接、索引等存储结构 10.在数据结构中的图形表示:没有前件的结点是根结点;没有后件的结点是终端结点;除根节点与终端结点以外的其他结点一般称为内部结点。 11.数据结构:分为线性结构(a.有且只有一个根结点b.每一个结点最多有一个前件,也最多有一个后件)和非线性结构(不是线性结构的),两种结构都可以是空的数据结构,按对该数据的结构运算处理判断是否为线性。 三、线性表及其顺序存储结构 12.线性表是由n(n=0)个数据元素a1,a2,,…an组成的一个有限序列,表中的每一个数据元素,除了第一个外,有且只有一个前件,除了最后一个外,有且只有一个后件,即线性表或是一个空表。非空线性表的结构特征:a.有且只有一个根结点a1,它无前件b.有且只有一个终端结点an,它无后件c.除了根结点和终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。线性表中结点的个数n称为线性表的长度。当n=0时,称为空表。 13.线性表的顺序存储结构有两个基本特点:a.线性表中所有元素所占的存储空间是连续的b.线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。 14.在线性表的顺序存储结构下,可以对线性表进行各种处理: 线性表的a.插入b.删除c.查找d.排序e.分解f.合并g.复制h.逆转。 栈和队列 栈是限定在一端进行插入与删除的线性表(顺序存储结构),是一种特殊的线性表:一端开口允许插入和删除称为栈顶,一端封闭不允许插入和删除称为栈底;即“先进后出”表或“后进先出”表,具有记忆作用;具有三种基本运算a.入栈运算b.退栈运算c.读栈顶元素 队列:在这种线性表中,需要加入的元素总是插入到线性表的末尾,并且又总是从线性表的头部取出(删除)元素。一端插入、另一端删除;即“先进先出”表或“后进后出”表。队列的顺序存储结构一般采用循环队列的形式。具有两种基本运算:入队运算和退队运算 线性链表 线性链表属于链式的存储方式,分为单向链表、双向链表和循环链表(实现了空表与非空表的运算统一)。线性结构与非线性结构都可表示。具有的基本运算如下:a.插入b.删除c.查找d.排序e.分解f.合并g.复制h.逆转。 树与二叉树 树是一种简单的非线性结构:上端结点是前件,下端结点是后件,具有明显的层次关系 树的基本术语:每一个结点只有一个前件,称为父结点;没有前件的结点只有一个,称为树的根结点;每一个结点可以有多个后件,称为该结点的子结点;没有后件的结点称为叶子结点;一个结点所拥有的后件个数称为该结点的度;树的最大层次称为树的深度;叶子结点没有子树。 二叉树是一种很有用的非线性结构,其特点是:a.非空二叉树只有一个根结点b.每一个

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档