- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
主要内容: 数据结构的基本概念 算法和算法评价 1.1 数据结构的基本概念 1. 数据结构的定义: 数据结构是一门讨论“描述现实世界实体的数学模型(非数值计算)及其上的操作在计算机中如何表示和实现”的学科。 或者说,数据结构是一门研究数据的组织、存储和运算的一般方法的学科。 数据:数据是信息的载体,是描述客观事物的数字、字符、以及所有能输入到计算机中,被计算机程序识别和处理的符号的集合。 数值性数据 非数值性数据 组织:数据的逻辑结构 例1 线形结构 学生成绩表格 例2 树型结构: 学校组织形式 A F C B D E 例3 图型结构: 城市交通道路图 45 50 68 30 25 80 100 40 70 存储:数据元素在计算机中的表示 例:学生成绩表,可用线性表来表示 线性表的计算机实现: 1、顺序表 数据元素为记录的一维数组 2、链表 用指针来确定元素的前后次序 运算:定义在数据上的操作 例:学生成绩表, 常用的操作有: 插入、删除、修改、查找、排序等 对于不同的存储表示,这些操作的实现方法与效率均有所不同。 2. 基本术语 数据: 数据元素(数据记录):是数据的基本单位,通常作为一个整体来处理。有时一个数据元素由若干数据项组成(具有独立含义的最小标识单位)。若某个数据项能唯一标识一个记录,则称该项为关键项,关键项中的值称为关键字。 数据结构:数据以及相互之间的关系。 可形式化的描述为二元组: B = {K, R} K:有限个数据元素的集合。 R: 有限个数据元素间二元关系的集合。该二元关系是有序对(即序偶)的集合,每个有序对是用一对尖括号括起来的、具有前驱和后继关系的两个元素,如:x,y。 数据结构依据视点的不同,分为数据的逻辑结构和物理结构,但时常把数据的逻辑结构简称为数据结构。 逻辑结构:从解决问题的需要出发,为实现必要的功能所建立的数据模型。是用于描述数据元素之间的逻辑关系。 分四种结构。 集合结构(无关系) 线性结构(线性关系) 一对一 树形结构(层次关系) 一对多 图形结构(网状关系) 多对多 职工号 姓名 性别 出生日期 职务 部门 01 万明华 男 1962-03-20 经理 ? 02 赵 宁 男 1968-06-14 主管 销售部 03 张 利 女 1964-12-07 主管 财务部 04 赵书芳 女 1972-08-05 主任 办公室 05 刘永年 男 1959-08-15 科员 销售部 06 王明理 女 1975-04-01 科员 销售部 07 王 敏 女 1972-06-28 科员 财务部 08 张 才 男 1967-03-17 科员 财务部 09 马立仁 男 1975-10-12 科员 财务部 10 邢怀常 男 1976-07-05 科员 办公室 实例: 某个公司的职工简表 该表中包含有10条职工记录,每条记录都由六个数据项所组成,可把每条记录的职工号作为该记录的关键字,用记录的关键字来代表整个记录。 ①对于上面所述的一张表,假定不考虑该表中记录之间的任何次序,则该表中的数据就是一个集合结构,对应的记录集合以及二元关系为: K={01,02,03,04,05,06,07,08,09,10} R={ } ②若考虑到该表中的职工记录是按照职工号从小到大有序排列的这个特点,则这个职工表又是一个线性结构,该线性结构包含的记录集合和二元关系为: K={01,02,03,04,05,06,07,08,09,10} R={01,02,02,03,03,04,04,05,05,06, 06,07,07,08,08,09,09,10} ③在上面职工表中,还存在职工人员之间领导与被领导的关系,因此,该职工表是一种树结构,包含的职工集合和二元关系分别为: K={01,02,03,04,05,06,07,08,09,10} R={01,02,01,03,01,04,02,05,02,06, 03,07,03,08,03,09,04,10} 对应的图形表示为: ④若要反映职工之间的好
文档评论(0)