- 1、本文档共97页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[理学]数据结构之第1章绪论
吾日三省吾身:为人谋而不忠乎?与朋友交而不信乎?传而不习乎? 行有余力,则以学文? 授课内容:第1章~第9章 及时、认真完成课后习题 预习并完成指定实验 上课不能迟到、早退和旷课 准备一个笔记本 成绩总评比例: 习题20% 实验20% 闭卷考试60% 1.1 数据结构的概念 1.2 抽象的数据类型 1.3 算法和算法分析 学习目标 掌握基本概念,特别是数据的逻辑和存储结构之间的关系。 理解抽象数据类型的定义、表示和实现方法。 明确算法的作用,并掌握算法时间复杂度估算方法。 Donald Knuth自传的开头这样写道: “Donald Knuth真的只是一个人么?”作为世界顶级计算机科学家之一,Knuth教授已经完成了编译程序、属性文法和运算法则的前沿研究,并编著完成了已在程序设计领域中具有权威标准和参考价值的书目的前三卷(《计算机程序设计艺术第1卷 基本算法》)。 程序是计算机处理问题编制一组指令集。 算法是处理问题的策略。 数据结构是解决问题的数学模型。 例1: 求一组(n个)整数中的最大值 算法:基本操作是“比较两个数的大小” 模型:线性表,数据的取值取决于整数值的范围 ADT 抽象数据类型名 { 数据对象:〈数据对象的定义〉 数据关系:〈数据关系的定义〉 基本操作:〈基本操作的定义〉 } ADT 抽象数据类型名 GB/T 11457-2006中定义算法为: 用有限步数求解某问题的一套明确定义的规则的集合。例如,求sin(x)到给定精度的一系列算术运算的顺序的完整规格说明; 为执行特定任务的任何运算序列。 算法具有五大特性: 输入 。有0个或多个输入; 输出 。有一个或多个输出; 确定性。 每步定义都是确切、无歧义的; 有穷性 。算法应在执行有穷步后结束; 可行性 。每一条运算应足够基本。 算法的性能标准包括: 正确性 能正确实现预定的功能和性能; 可使用性 能方便使用; 可读性 可理解、可测试和可修改; 效率 执行算法时计算机资源的消耗,包括时间代价和空间代价; 健壮性 对不同的输入能做出相应的响应。 一个特定算法的“运行工作量”的大小,依赖于:问题的规模(问题规模函数);数据元素初始状态。 算法复杂度的度量属于事前估计,可分为: 时间复杂度度量:当问题的规模以某种单位从1增加到n时,解决这个问题的算法在执行时所耗费的时间也以某种单位由1增加到T(n)。 空间复杂度度量:当问题的规模以某种单位从1增加到n时,解决这个问题的算法在执行时所占用的存储空间也以某种单位由1增加到S(n)。 存储空间的固定部分程序指令代码的空间,常数、简单变量、定长成分(如数组元素、结构成分、对象的数据成员等)变量所占的空间。 存储空间的可变部分尺寸与实例特性有关的成分变量所占空间、引用变量所占空间、递归栈所用的空间、通过new和delete命令动态使用的空间。 假如,随着问题规模 n 的增长,算法执行时间的增长率和 f(n) 的增长率相同,则可记作: T (n) = O(f(n)) T (n) 为算法的(渐近)时间复杂度 从算法中选取一种对于所研究的问题来说是基本操作的原操作,以该基本操作在算法中重复执行的次数作为算法运行时间的衡量准则。 设T(n)和f(n)是将非负整数映射为实数的函数。如果存在常数c0和整常数n0≥1对于每个n ≥n0,满足T(n) ≤c·f(n),则称T(n)是O(f(n))。 这个定义长称为大O符号,因为有时它读作“T(n)是f(n)的大O”,或读作T(n)是f(n)阶的。 借助大O符号可以说,随着n趋向无穷(依据定义中的n ≥n0 ),在渐进意义上,n的一个函数“小于或等于”另一个函数(依据定义中的不等号) 的常数倍(依据定义中的常数c)。 程序分析法则: 简单的输入、输出和赋值语句,需要O(1)时间。 对于顺序结构,求一次执行时间用O的“求和法则”,即: T(n)=T1(n)+T2(n) =O(f1(n))+ O(f2(n)) =O(max( f1(n), f2(n)) ) 对于选择结构,时间耗费在then和else语句,检测条件还需O(1)时间。 对于循环结构,运行时间体现在多次迭代中执行循环体以及检验循环条件,用O的“乘法法则”,即: T(n)=T1(n)×T2(n) =O(f1(n))× O(f2(n)) =O( f1(n)×f2(n) ) 对于复杂的
您可能关注的文档
- [理学]同济高数上第四章习题.ppt
- [理学]咨询关系2.ppt
- [理学]哈工大化学信息学课件之2-1 INTERNET上的化学信息检索.ppt
- [理学]含磷、硫化合物作为中间体的合成反应.ppt
- [理学]原子物理学.ppt
- [理学]固体物理导论第八章课件.ppt
- [理学]图书管理系统Java.pdf
- [理学]四川理工学院微波技术与天线-第5章 微波网络.ppt
- [理学]四川教改.ppt
- [理学]地图编制.pdf
- 2.1神经调节的结构基础 课件 人教版高中生物学选择性必修1.pptx
- 2.2.1算术平方根 课件 北师大版数学八年级上册.pptx
- 2.3.1细胞通过分裂而增殖 课件(内嵌视频3个)初中生物学北师大版(2024)七年级上册.pptx
- 2.3.2细胞分化形成组织 课件 初中生物学北师大版(2024)七年级上册.pptx
- 4.3.1 角与角的大小比较 课件 2025-2026学年湘教版数学七年级上册.pptx
- 2.3.3生物体的器官、系统 课件 初中生物学北师大版(2024)七年级上册.pptx
- 聚异氰酸酯行业商业计划书.docx
- 2.4节神经系统的分级调节 课件 人教版高中生物学选择性必修1.pptx
- 【公开课】探索勾股定理第1课时(课件)数学北师大版2024八年级上册.pptx
- 综合实践 一天的时间(课件)2025-2026学年度苏教版数学三年级上册.pptx
最近下载
- 绿城好房子体系.pptx
- AI在计算机科学教学中的应用论文.docx
- 人教版七年级历史下册期末试卷(含答案).pdf VIP
- 员工手册电子版员工手册电子版.doc VIP
- 【高考数学押题卷】2025年全国100所名校高考模拟示范卷七含答案或解析.pdf
- 孚瑞肯FR100系列变频器使用说明书.pdf
- 开放系统22226《物业管理实务(2)》期末机考真题及答案(第101套).docx
- 武侯区2018-2019学年五年级下数学调考试卷-.pdf VIP
- 尪痹(类风湿关节炎)中医护理效果评价表.docx VIP
- J B-T 10441.3-2004 电工用皱纹绝缘纸 第3部分 技术要求.pdf VIP
文档评论(0)