公共基础知识讲课教案解读.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
P11 数据结构与算法 一、算法 算法的概念、解决实际问题时准确而完整的描述,也可以理解为一系列解决问题的指令的集合。 算法的四个特点 可行性、执行后能够得到满意的结果。说明这个算法是可行的, 确定性、每一步都必须有明确的定义,不允许有模能两可的解释和多义性 有穷性、在有限的时间内完成,即算法执行有限的步骤后终止 拥有足够的情报、充分调查,获得足够的(信息)情报 算法的两种基本要素 数据对象的运算和操作 算法的控制结构 算法的设计方法 列举法、来解决“是否存在”或“有多少种可能” 归纳法、通过特殊情况(一般性的结论来 递推法、从已知的初始条件(中间结果或最后结果 递归法、对问题层层分解,当解决了那些最简单的问题后,再沿层层分解的逆序过程,导出最后的结果来 减半递推技术、对问题分而治之 回溯法、即“试探”的方法。即找出一个解决问题的线索,然后沿着这个线索试探,若试探成功,就得到了问题的解,若试探失败,就逐步回退,回到正确的位置再向下试探 算法的复杂度 时间复杂度:算法所需要的计算工作量 空间复杂度、执行算法所需要的内存空间 衡量一个算法的技术指标就是时间复杂度和空间复杂度。一个好的算法就是要求时间复杂度和空间复杂度越小越好。 二、数据结构 1、概念:指相互有关联的数据元素的集合。逻辑结构 存储结构 运算的集合 2、逻辑结构:它反映数据元素之间的逻辑结构,它用前后件的关系来表示,根据前后件关系的复杂程度分 线性结构 如、B=(a,b,c,d) D={a,b,c,d},R={{a,b},{b,c},{c,d}} 非线性结构 如、 具体用B=(D,R)来表示 3、存储结构、逻辑结构在计算机存储空间的映射。 顺序存储 链式存储 索引存储 散列存储 4、线性结构、a满足的条件 a第一个结点无前驱,最后一个结点无后继 b除a外的每一个结点有且仅有一个前驱和一个后继. b对一个线性结构操作后,仍旧是一个线性结构 c优点、查找比较方便,通过计算地址可以直接找到它 Address(a(i)=address(a1)+(i-1)*k k:每个元素所占存储单元的字节数 d缺点、插入和删除结点时要移动大量的元素,要知道最优和最坏的情况 e一般采用顺序存储结构,逻辑上相邻的结点在存储结构中也是相邻的。 两个特例 栈 队列 栈、 只有一个出入口 特点、先进后出。 对栈操作的过程 入栈(push)、出栈(pop)和读栈顶元素 队列、一个出口,一个入口 特点、先进先出 循环队列对满与对空的条件 对满、s=1,且front=real 对空、s=0,且front=real=m m:队列的大小 5、线性链表、链表结点的组成 数据域、存放当前结点的数据信息

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档