西安理工大学815数据结构考研真题及重点习题精讲.pdf

西安理工大学815数据结构考研真题及重点习题精讲.pdf

  1. 1、本文档共62页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西安理工大学《815数据结构》真题精讲及习题补充 第 1讲 西安理工大学2013年真题 1.(共 15分)针对顺序表的查找过程,完成下面的任务: (1)给出一个简单的静态查找表的顺序存储结构描述; (2)设计一个算法,描述顺序查找过程; (3)对于含有n个记录的顺序表,假设每个记录的查找概率相等,查找成功时顺序查找算法的平 均查找长度是多少? 2.(共20分)什么是直接插入排序?已知待排序的一组记录的初始列如下所示: - R(49),R(38),R(65),R(97),R(76),R(13),R(27), R(49) 其中R(X)表示关键字为X的记录。 (1)给出直接插入排序的过程示意。 (2)设计简单的待排序记录的数据类型定义。 (3)设计一个算法,描述直接插入排序过程。 3.(共10分)根据系统运行情况的不同,可利用空间表有哪几种不同的结构形式? 4.(共15分)图的存储结构都有哪些?给出你所熟悉的两种存储结构的描述。 5.(共20分):什么是线性表的顺序表示? (1)给出线性表的动态分配顺序存储结构的描述。 (2)设计一个顺序表初始化算法。 (3)设计一个顺序表插入算法。 6.(共20分)给出栈的顺序存储表示。栈都有哪些基本操作?设计两个你所熟悉 的基本操作 算法。 7.(共15分)什么是串联接?设计一个串联接算法。 8.(共15分)写出数组的顺序存储表示,在此基础上: (1)设计数组的初始化操作算法; (2)设计数组销毁操作算法。 9.(共20分)什么是二叉树? (1)设计二叉树的二叉链表存储表示。 (2)若限定先左后右,二叉树的遍历有几种?分别如何操作? (3)设计一种你所熟悉的二叉树遍历操作算法。 — 1— 考试点(www.kaoshidian.com)名师精品课程 电话:4006885365 第2讲 线性表 一、历年真题 1.(共20分)什么是线性表的顺序表示?(2013年第5题) (1)给出线性表的动态分配顺序存储结构的描述。 (2)设计一个顺序表初始化算法。 (3)设计一个顺序表插入算法。 二、精选习题 2.试比较顺序存储结构和链式存储结构的优缺点。在什么情况下用顺序表比链表好? 答: 顺序存储时,相邻数据元素的存放地址也相邻(逻辑与物理统一);要求内存中可用存储单 ① 元的地址必须是连续的。 优点:存储密度大,存储空间利用率高。缺点:插入或删除元素时不方便。 ②链式存储时,相邻数据元素可随意存放,但所占存储空间分两部分,一部分存放结点值,另一部 分存放表示结点间关系的指针。 优点:插入或删除元素时很方便,使用灵活。 缺点:存储密度小存储空间利用率低。 顺序表适宜于做查找这样的静态操作;链表宜于做插入、删除这样的动态操作。 若线性表的长度变化不大,且其主要操作是查找,则采用顺序表; 若线性表的长度变化较大,且其主要操作是插入、删除操作,则采用链表。 3.描述以下三个概念的区别:头指针、头结点、首元结点(第一个元素结点)。在单链表中设置头 结点的作用是什么? 答:首元结点是指链表中存储线性表中第一个数据元素a1的结点。为了操作方便,通常在链表 的首元结点之前附设一个结点,称为头结点,该结点的数据域中不存储线性表的数据元素,其作用是 为了对链表进行操作时,可以对空表、非空表的情况以及对首元结点进行统一处理。头指针是指向链 表中第一个结点(或为头结点或为首元结点)的指针。 若链表中附设头结点,则不管线性表是否为空表,头指针均不为空。否则表示空表的链表的头指 针为空。这三个概念对单链表、双向链表和循环链表均适用。是否设置头结点,是不同的存储结构表 示同一逻辑结构的问题。 — 2—

文档评论(0)

大漠天下 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档