C语言算法与数据结构概论.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
萝卜网数据资料之 算法与数据结构概论 概论概论 • 基础知识 • 时间复杂度 • 空间复杂度 1.11.1 基本概念和术语基本概念和术语 数据((Data)) :是客观事物的符号表示。在计算机科学中指的是所有能输 入到计算机中并被计算机程序处理的符号的总称。 数据元素数据元素((DataData ElementElement)) ::是数据的基本单位是数据的基本单位,,在程序中通常在程序中通常作为作为 一个整体来进行考虑和处理。 一个数据元素可由若干个个数据元素可由若干个数据项数据项((DataData ItemItem))组成组成。数据项是数据的数据项是数据的 不可分割的最小单位。数据项是对客观事物某一方面特性的数据描述。 数据对象数据对象((DDatta ObjObjectt)) :是性质相同的数据元素的集合是性质相同的数据元素的集合,是数据的是数据的一 个子集。如字符集合C={‘A’,’B’,’C,…} 。 数据结构(Data Structure) :是指相互之间具有(存在)一定联系(关系) 的数据 元素的集合。元素之间的相互联系(关系)称为逻辑结构。数据元素之间的 逻辑结构有四种基本类型,如图1-3所示。 ① 集合:结构中的数据元素除了“同属于一个集合”外,没有其它关 系系。 ② 线性结构:结构中的数据元素之间存在一对一的关系。 ③③ 树型结构树型结构:结构中的数据元素之间存在结构中的数据元素之间存在一对多的关系对多的关系。 ④ 图状结构或网状结构:结构中的数据元素之间存在多对多的关系。 1.31.3 数据结构的形式定义数据结构的形式定义 图1-3 四类基本结构图结构图 数据结构的形式定义是数据结构的形式定义是一个二元组个二元组: Data-Structure=(D ,S) 其中:D是数据元素的有限集,S是D上关系的有限集。 例2 :设数据逻辑结构B= (K ,R ) K={k , k , …, k } 1 2 9 R={R={ kk , kk ,kk , kk ,kk , kk ,kk , kk ,kk , kk ,kk , kk ,kk , kk ,kk , kk , 11 33 11 88 22 33 22 44 22 55 33 99 55 66 88 99 k , k ,k , k ,k , k } 9 7 4 7 4 6 画出这逻辑结构的图示,并确定那些是起点,那些是终点 1.41.4 数据结构的存储方式数据结构的存储方式 数据元素之间的关系可以是元素之间代表某种含义的自然关 系系,也也可以是为为处理问题方便而人为定义的关系为定义的关系,这种种自自然或 人为定义的 “关系”称为数据元素之间的逻辑关系,相应的 结构结构称为称为逻辑结构逻辑结构。 数据结构在计算机内存中的存储包括数据元素的存储和元素之间的关系 的表示的表示。。 元素之间的关系在计算机中有两种不同的表示方法:顺序表示和非顺序 表示 。由此得出两种不同的存储结构:顺序存储结构和链式存储结构 。 • 顺序存储结构 :用数据元素在存储器中的相对位置来表示数据元素之间的逻辑 结构(关系) 。 • 链式存储结构链式存储结构 ::在每在每一个数据元素中增加个数据元素中增加一个存放另个存放另一个元素地址的指针个元素地址的指针 (pointer ),用该指针来表示数据元素之间的逻辑结构(关系)。 例:设有数据集合A={3.0,2.3,5.0,-8.5,11.0} ,两种不同的存储结构。 • 顺序结构顺序结构 ::数据元素存放的数据元素存放的地址是连续的地址是连续的 ;; • 链式结构:数据元素存放的地址是否连续没有要求。 数数据的逻逻辑结构和物理结构是是密不可分分的两个方方面,一个算法算法的设计取决决 于所选定的逻辑结构 ,而算法的实现依赖于所采用的存储结构

文档评论(0)

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

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

1亿VIP精品文档

相关文档