- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章数据的组织
第4章 数据的组织 主要内容 4.1 数据结构 4.2 文件结构 一、基本概念 数据:是表示信息的物理符号,是信息的载体,它能够被计算机识别、存储和加工处理。 结构:数据元素间的关系。 数据结构:是指互相之间存在着一种或 多种关系的数据元素的集合。 主要研究内容 ①数据的逻辑结构; ②数据的存储结构; ③对各种数据结构进行的运算,包括插入、删除、查找、排序等。 数据的逻辑结构 数据的存储结构 数据的逻辑结构在计算机存储空间中的存放形式称为数据的物理结构(或存储结构)。 顺序存储结构 链式存储结构 数据结构的类型 线性结构(一对一) 非线性结构 一、线性表 线性表是由n(n=0)个数据元素组成的一个有限序列,表中的每一个数据元素,除了第一个外,有且只有一个前趋,除了最后一个外,有且仅有一个后继。即可表示为:(a1,a2,……,ai,……,an),其中ai是性质相同的数据元素,也称为线性表中的一个结点。 二、栈 三、队列 队列 队列是限定只能在表的一端进行插入,在表的另一端进行删除的线性表。它按照“先进先出”(FIFO)的原则组织数据。表中允许插入的一端叫做队尾,允许删除的一端叫做队头。 四、树 树形结构是一种简单的非线性结构。 (1)树的基本术语 ①每个结点只有一个前驱,称为父结点; ②没有前驱的结点只有一个,称为根结点; ③每一个结点可以有多个后继,称为该结点的子结点; ④没有后继的结点称为叶子结点; ⑤一个结点所拥有的后继个数称为该结点的度; ⑥所有结点中的最大的度称为树的度; ⑦根结点在第1层,树的最大的层次称为树的深度。 (2)二叉树 只有一个根结点,每一个结点最多有两棵子树(度只能是0、1、2),且严格区分是左子树还是右子树。 (3)二叉树的基本性质 ①在二叉树的第i层上,最多有2i-1(i=1)个结点。 ②深度为k的二叉树中结点总数最多为2k-1。 (4)满二叉树 深度为k的二叉树有2k-1个结点(即性质2中允许的最大值)。 (5)完全二叉树 除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。 (6)二叉树的遍历 ①前序遍历(DLR):先访问根结点,再前序遍历左子树,最后前序遍历右子树。(根左右) ②中序遍历(LDR):先中序遍历左子树,再访问根结点,最后中序遍历右子树。(左根右) ③后序遍历(LRD):先后序遍历左子树,再后序遍历右子树,最后访问根结点。(左右根) 小结 数据结构 文件结构 * 数据元素间逻辑关系的描述称为数据的逻辑结构。 集合结构:结构中的数据元素之间除了同属于一个集合的关系外,无任何其它关系。 线性结构:结构中的数据元素之间存在着 一对一的线性关系。 集合 线性 图 树 树形结构:结构中的数据元素之间存在着一对多的层次关系。 图状(网状)结构:结构中的数据元素之间存在着多对多的任意关系。 线性表 线性表的顺序存储结构 线性表的顺序存储结构的基本特点: ①线性表中所有元素所占的存储空间是连续的; ②线性表中每个元素在存储空间中是按逻辑顺序存放的。 a1 a2 ai an … … 1 2 n i 线性表的插入运算 在长度为n的线性表(a1,a2,…,ai,…,an)的第i 元素ai之前插入一个新元素x后得到的长度为n+1的线性表为(a1,a2,…,x,ai,…,an)。 实现方法:要在第i元素之前插入一个新元素x,首先要从最后一个(即第n 个)元素开始,直到第i 元素之间的n-i+1个元素依次向后移动一个位置,移动结束后,在第i 位置写入新元素x。插入结束后,表长度就增加了1。 线性表的删除运算 在长度为n的线性表(a1,a2,…,ai,…,an)中删除第i 元素ai后,变为长度为n-1的线性表(a1,a2,…, ai-1, ai+1…,an)。 实现方法:要删除第i (1=i=n)元素,首先要从第i+1元素开始,直到最后一个(即第n个)元素之间的n-i个元素依次向前移动一个位置。删除结束后,表长度减1。 用桶堆积物品,先放进来的压在底下,随后一件一件往上放。取走时,只能从上面一件一件取。放和取都在顶部进行,底部一般是不动的。 栈 ( Stack )的概念 只允许在一端插入和删除的表 允许插入和删除 的一端称为栈顶 (top),另一端称 为栈底(bottom) 特点 后进先出 (LIFO) 栈的基本运算 ①入栈:先判断,若栈满不能入栈,发生“上溢”错误; 不满时将新元素插入到栈顶位置后,修改栈顶指针top++。
您可能关注的文档
最近下载
- 浙江省杭州市上城区2024-2025学年九年级上学期语文期末试卷(含答案).pdf VIP
- 天津市西青区税务局个人所得税专项附加扣除培训辅导.pptx VIP
- 销售人员必备山东省日照市东港区医疗机构分布明细.pdf VIP
- 贵州大学《电动力学》2024 - 2025 学年第一学期期末试卷.pdf VIP
- 商用密码应用安全性评估交流V1.1.pptx VIP
- 2025年安庆辅警协警招聘考试真题必考题.docx VIP
- 《流行性腮腺炎》PPT课件.pptx VIP
- Romax软件培训教程_CCT1_连接工具.pdf VIP
- 商用密码应用安全性评估介绍V1.0.pptx VIP
- 综合布线系统运行维护规范.docx VIP
原创力文档


文档评论(0)