数据结构(C语言版)知识点复习资料.docVIP

  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文档。上传文档
查看更多
... ... 数据结构复习资料 一、填空题 数据结构是一门研究非数值计算的程序设计问题中计算机的 操作对象以及它们之间的 关系 和 运 算 等的学科。 数据结构被形式地定义为( D, R ),其中 D是 数据元素 的有限集合, R是 D上的 关系 有限集合。 数据结构包括数据的 逻辑结构 、数据的 存储结构 和数据的 运算 这三个方面的内容。 数据结构按逻辑结构可分为两大类,它们分别是 线性结构 和 非线性结构 。 线性结构中元素之间存在 一对一 关系, 树形结构中元素之间存在 一对多 关系, 图形结构中元素之间存在 多对多 关系。 6. 在线性结构中,第一个结点 没有 前驱结点,其余每个结点有且只有 1 个前驱结点;最后一个结点 没有 后续结点,其余每个结点有且只有 1 个后续结点。 在树形结构中,树根结点没有 前驱 结点,其余每个结点有且只有 1 个前驱结点;叶子结点没有 后续 结点,其余每个结点的后续结点数可以 任意多个 。 在图形结构中,每个结点的前驱结点数和后续结点数可以 任意多个 。 9.数据的存储结构可用四种基本的存储方法表示,它们分别是 顺序 、 链式 、 索引 和 散列 。 数据的运算最常用的有 5 种,它们分别是 插入 、 删除、修改、 查找 、排序 。 一个算法的效率可分为 时间 效率和 空间 效率。 在顺序表中插入或删除一个元素, 需要平均移动 表中一半 元素, 具体移动的元素个数与表长和该元素在表中 的位置 有关。 线性表中结点的集合是 有限 的,结点间的关系是 一对一 的。 向一个长度为 n 的向量的第 i 个元素 (1 ≤ i ≤ n+1) 之前插入一个元素时,需向后移动 n-i+1 个元素。 向一个长度为 n 的向量中删除第 i 个元素 (1 ≤ i ≤ n) 时,需向前移动 n-i 个元素。 在顺序表中访问任意一结点的时间复杂度均为 O(1) ,因此,顺序表也称为 随机存取 的数据结构。 顺序表中逻辑上相邻的元素的物理位置 必定 相邻。单链表中逻辑上相邻的元素的物理位置 不一定 相邻。 18.在单链表中,除了首元结点外,任一结点的存储位置由其直接前驱结点的链域的值 指示。 19. 在 n 个结点的单链表中要删除已知结点 *p,需找到它的 前驱结点的地址,其时间复杂度为 O(n)。 向量、栈和队列都是 线性 结构,可以在向量的 任何 位置插入和删除元素; 对于栈只能在 栈顶 插 入和删除元素;对于队列只能在 队尾 插入和 队首 删除元素。 栈是一种特殊的线性表,允许插入和删除运算的一端称为 栈顶 。不允许插入和删除运算的一端称为 栈 底 。 队列 是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。 不包含任何字符(长度为 0)的串 称为空串; 由一个或多个空格(仅由空格符)组成的串 称为空白 串。 子串的定位运算称为串的模式匹配; 被匹配的主串 称为目标串, 子串 称为模式。 假设有二维数组 A6× 8,每个元素用相邻的 6 个字节存储,存储器按字节编址。已知 A 的起始存储位置(基地 址)为 1000,则数组 A的体积(存储量) 为 288 B;末尾元素 A57 的第一个字节地址为 1282 ;若按行存储时, 元素 A14 的第一个字节地址为 (8+4) × 6+1000=1072;若按列存储时,元素 A47 的第一个字节地址为 (6 × 7+4) × 6+ 1000)= 1276 。 26. 由3个结点所构成的二叉树有 5 种形态。 一棵深度为 6 的满二叉树有 n1+n2=0+ n2= n0-1=31 个分支结点和 2 6-1 =32 个叶子。 注:满二叉树没有度为 1 的结点,所以分支结点数就是二度结点数。 28. 一棵具有257个结点的完全二叉树,它的深度为 9。 注:用 [log2(n)]+1=[8.xx]+1=9 29.设一棵完全二叉树有 700 个结点,则共有 350 个叶子结点。 答:最快方法:用叶子数= [n/2] =350 30. 设一棵完全二叉树具有 1000 个结点,则此完全二叉树有 500 个叶子结点,有 499 个度为 2 的结点, 有 1 个 结点只有非空左子树,有 0 个结点只有非空右子树。 答:最快方法:用叶子数= [n/2] =500 ,n2=n0-1=499 。 另外,最后一结点为 2i 属于左叶子,右叶子是空的, 所以有 1 个非空左子树。完全二叉树的特点决定不可能有左空右不空的情况,所以非空右子树数= 0. 31.在数据的存放无规律而言的线性表中进行检索的最佳方法是 顺序查找(线性查找) 。 线性有序表( a1,a2,a3,, , a256) 是从小到大排列的,对一个给定的值 k,

文档评论(0)

5566www + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:6122115144000002

1亿VIP精品文档

相关文档