《数据结构(/++描述)》-第1章 绪论.ppt

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《数据结构(/++描述)》-第1章 绪论.ppt

内 容 安 排 3.数据项(Data item) 构成数据元素的项目,是具有独立含 义的最小标识单位。   (又称字段、域、属性 等)。 数据结构涵盖的内容 例:用图形表示下列数据结构,并指出它们是属于线性结构还是非线性结构。 (1) S=(D, R) D={ a, b, c, d, e, f } R={<a,e>, <b,c>, <c,a>, <e,f>, <f,d>} (2) S=(D, R) D={ di | 1≤i≤5 } R={ <di , dj > | i<j } d1 d5 d2 d4 d3 7. 数据运算   是在数据的逻辑结构上定义的操作算法, 它在数据的存储结构上实现。 例:分析以下程序段的时间复杂度。 i=1; ① while(i<=n) i=i*2; ② 时间复杂度T(n)按数量级递增顺序为: 渐进符号(O)的定义: 当且仅当存在一个正的常数 C,使得对所有的 n ? n0 有 g(n) ? Cf(n),则 g(n) = O(f(n)) 3n+2=O(n) /* 3n+2?4n , n?2 */ 3n+3=O(n) /* 3n+3?4n , n?3 */ 100n+6=O(n) /* 100n+6?101n , n?10 */ 10n2+4n+2=O(n2) /* 10n2+4n+2?11n2 , n?5 */ 6*2n+n2=O(2n) /* 6*2n+n2 ?7*2n , n?4 */ 从算法中选取一种对于所研究的问题来说是 基本操作 的原操作; 以该基本操作 在算法中重复执行的次数 作为算法运行时间的衡量准则。   该算法的运行时间由程序中所有语句的频度(即该语句重复执行的次数)之和构成。 解: 分析:显然,语句①的频度是1。设语句②的频度是f(n),    则有: 即:f(n)≤log2n,取最大值:f(n)=log2n 所以该程序段的时间复杂度:        T(n)=1+f(n)=1+ log2n= O( log2n) 算法的时间复杂度是由嵌套最深层语句的频度决定的。 注1:O( )为渐近符号。 注2:空间复杂度S(n)按数量级递增顺序也与上  表类同。 复杂度高 复杂度低 例: 在不同的编程环境中, 存储结构可有不同的描述方法。   当用高级程序设计语言进行编程时,通常可用高级编程语言中提供的数据类型描述存储结构。 例如:  以3个带有次序关系的整数表示一个长整数时,可利用 C 语言中提供的整数数组类型, typedef int Long_int [3]; 定义长整数为: typedef struct { int y; // 年号 Year int m; // 月号 Month int d; // 日号 Day } DateType; // 日期类型 定义“日期”为: 定义“学生”为: typedef struct { char id[8]; // 学号 char name[16]; // 姓名 char sex; // 性别‘M/F’:男/女 DateType bdate; // 出生日期 } Student; // 学生类型 最常用的数据运算有5种: 插入、删除、修改、查找、排序 数据类型 在用高级程序语言编写的程序中:   必须对程序中出现的每个变量、常量或表达式,明确说明它们所属的数据类型。 例如,C 语言中提供的基本数据类型有: 整型 int 浮点型 float 字符型 char 逻辑型 bool ( C++语言) 双精度型 double 数据类型 是一个值的集合和定义在此集合上的一组操作的总称。   不同类型的变量,其所能取的值的范围不同,所能进行的操作不同。 例如:整型 值的范围是:-32768--32767 操作是:+,-,*,/,% 1.2 抽象数据类型 (Abstrac

文档评论(0)

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

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

1亿VIP精品文档

相关文档