数据结构简答题.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数数据据结结构构简简答答题题 第第⼀⼀章章 绪绪论论 1、数据结构是⼀门研究什么的学科? 数据结构是⼀门研究⾮数值计算的程序设计问题 ,计算机操作对象及对象间的关系和施加于对象的操作等的学科。 2、数据存储结构有哪⼏种类型? 存储结构可分为顺序存储、链式存储、索引存储和散列存储。 3、数据逻辑结构包括哪⼏种类型? 逻辑结构包括线性结构和⾮线性结构。更细分的话可以说,逻辑结构包括集合、线性结构 (线性表、栈、队列等)、树形结构和⽹状结构。 4、数据结构与数据类型有什么区别? 答:数据结构这⼀术语有两种含义,⼀是作为⼀门课的名称,⼆是作为⼀个科学的概念,⽬前尚⽆公认定义,⼀般认为,数据结构包括三个 ⽅⾯数据的逻辑结构,数据的存储结构,数据的运算。⽽数据类型是值的集合和操作的集合,可以看做是已实现了的数据结构,后者是前者 的⼀种简化情况。 5、数据类型和抽象数据类型是如何定义的?⼆者有何相同和不同之处?抽象数据类型的主要特点是什么?使⽤抽象数据类型的主要好处是 什么?数据类型和抽象数据类型是如何定义的?⼆者有何相同和不同之处?抽象数据类型的主要特点是什么?使⽤抽象数据类型的主要好处 是什么? 答:数据类型是程序设计语⾔ 的⼀个概念,数据类型是值的集合和操作的集合,可以看做是已实现了的数据结构 抽象数据类型指⼀个数学模型及定义在该模型上的⼀组操作。抽象的意义在于数据类型的数学抽象特性。抽象数据类型的定义仅取决于它 的逻辑特性,⽽与其在计算机内部如何表⽰与实现⽆关。⽆论其内部如何变化。只要它的数学特性不变就不影响它的外部使⽤。抽象数据类 型和数据类型实质上是⼀个概念,但是抽象数据类型的范围更⼴,它已不再局限于机器已定义和实现的数据类型,还包括⽤户在设计软件系 统时⾃⾏定义的数据类型。使⽤抽象数据类型定义的软件模块含定义,表⽰和实现三部分,封装在⼀起,对⽤户透明(提供接⼝),⽽不必了 解实现细节。 6、名词解释 数据:是对客观事物的符号表⽰,在计算机科学 指所有能输⼊到计算机并能被计算机程序处理的符号总称。 数据元素:是数据的基本单位。在计算机科学 通常作为⼀个整体进⾏考虑和处理 数据对象:是性质相同的数据元素的集合,是数据的⼀个⼦集 数据结构:是相关之间存在⼀种或多种特定关系的数据元素集合 存储结构:数据结构在计算机 的表⽰ 数据类型:是⼀个值的集合和定义在这个值集上⼀组操作的总称,是值的集合和操作的集合 抽象数据类型:是指⼀个数学模型,以及定义在该模型上的⼀组操作 7、算法的时间复杂度 答:算法时间复杂度⽤来度量算法执⾏时间的多少,⽤⼤O阶表⽰,即T(n)=O(f(n)),其 n为问题规模,也就是问题的⼤⼩ 8、算法的五个重要特性 有穷性、确定性、可⾏性、输⼊、输出 9、评价算法好坏的依据 正确性、可读性、健壮性、⾼效率和低存储需求 第第⼆⼆章章 线线性性表表 1、对顺序存储结构和链式存储结构,⽐较它们的优缺点。在什么情况下⽤顺序表⽐链表好? 1)顺序存储时,相邻数据元素的存放地址相邻 (逻辑与物理统⼀),内存 可⽤存储单元的地址也连续。 优点:存储密度⼤,存储空间利⽤率⾼。缺点:插⼊删除需要移动元素。 2)链式存储时,相邻元素随意存放,存储空间由结点值和指针两部分组成。 优点:插⼊删除⽅便。缺点:存储利⽤率低。 在线性表长度变化不⼤,主要操作是查找时,采⽤顺序表。 在线性表长度变化较⼤,插⼊删除操作时,采⽤链表。 2、试举⼀例说明对相同的逻辑结构,同⼀种运算在不同的存储⽅式下实现,其运算效率不同。 答:线性表的插⼊删除操作。在顺序存储⽅式下平均移动⼀半元素,时间复杂度为O(n),在链式存储⽅式下,插⼊和删除的时间复杂度都是 O(1)。 3、说明头指针、头节点、⾸元结点的概念 头指针是指向链表 第⼀个结点 (或头节点或⾸元结点)的指针。 头节点是在链表的⾸元结点之前附加的⼀个结点,头结点是为了操作的统⼀⽅便⽽设⽴的。数据域⼀般⽆意义,只放空表标志和表长等信 息。 ⾸元素结点是指链表 存储线性表 第⼀个元素结点。 3、简述顺序存储队列假溢出的避免⽅法及队满和空的条件。 答:避免⽅法:⼀是将队列元素向前“平移”(占⽤0⾄rear -front 1);⼆是将队列看成⾸尾相连,即看做循环队列(0...m-1)。 在循环队列下,定义front =rear时为队空,⽽判断队满则常⽤两种⽅法:⼀种是⽤ “牺牲⼀个单元” ,即rear+1=front (准确说是 (rear+1) m= =front 时,m是队列容量)时为队满:另⼀种⽅法是 “设标记”,如设标记tag, t

文档评论(0)

135****0879 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档