- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 线 性 表
典型例题解析
一、选择题
1.线性表是具有n个(n≥0) 的有限序列。
A.表元素 B.字符 C.数据元素 D.数据项
【分析】线性表是具有相同数据类型的n(n≥0)个数据元素的有限序列,通常记为(a1,a2,…,an),其中n为表长,n=0时称为空表。
【答案】C
2.顺序存储结构的优点是 。
A.存储密度大 B.插入运算方便
C.删除运算方便 D.可方便地用于各种逻辑结构的存储表示
【分析】顺序存储结构是采用一组地址连续的存储单元来依次存放数据元素,数据元素的逻辑顺序和物理次序一致。因此,其存储密度大。
【答案】A
3.带头结点的单链表head为空的判断条件是 。
A.head==NULL B.head-next==NULL
C.head-next==head D.head!=NULL
【分析】链表为空时,头结点的指针域为空。
【答案】B
4.若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用 存储方式最节省运算时间。
A.单链表 B.仅有头指针的单循环链表
C.双链表 D.仅有尾指针的单循环链表
【分析】根据题意要求,该线性表的存储应能够很方便地找到线性表的第一个元素和最后一个元素,A和B都能很方便地通过头指针找到线性表的第一个元素,却要经过所有元素才能找到最后一个元素;选项C双链表若存为双向循环链表,则能很方便地找到线性表的第一个元素和最后一个元素,但存储效率要低些,插入和删除操作也略微复杂;选项D可通过尾指针直接找到线性表的最后一个元素,通过线性表的最后一个元素的循环指针就能很方便地找到第一个元素。
【答案】D
5.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用 存储方式最节省时间。
A.顺序表 B.双链表
C.带头结点的双循环链表 D.单循环链表
【分析】某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算。因此不需要移动线性表种元素的位置。根据题意要求,该线性表的存储应能够很方便地找到线性表的任一指定序号的元素和最后一个元素,顺序表是由地址连续的向量实现的,因此具有按序号随机访问的特点。链表需要通过指针才能找到线性表的莫以指定序号的元素,需要一定的时间开销。
【答案】A
6.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用 最节省时间。
A. 单链表 B.单循环链表
C. 带尾指针的单循环链表 D.带头结点的双循环链表
【分析】根据题意要求,该线性表的存储应能够很方便地找到线性表的最后一个元素和最后一个元素的前驱元素,A和B都不能很方便地通过头指针找到线性表的第一个元素;选项C可以方便地找到最后一个元素,单不能很快地找到其前驱元素;选项D为双向循环链表,可以很方便地找到线性表的最后一个元素,通过其前驱指针,从而可以方便地找到其前驱元素。
【答案】D
7.静态链表中指针表示的是 。
A. 内存地址 B.数组下标 C.下一元素地址 D.左、右孩子地址
【分析】静态链表采用的是链式方式存储线性表,以数组方式存储链表的数据,指针域存储的是该结点逻辑上的后继结点的相对地址(即在数组中的下标),也称为静态指针。
【答案】B
8.链表不具有的特点是 。
A.插入、删除不需要移动元素 B.可随机访问任一元素
C.不必事先估计存储空间 D.所需空间与线性长度成正比
【分析】链表是通过一组任意的存储单元来存储线性表中的数据元素的,为建立起数据元素之间的线性关系,对每个数据元素,除了存放数据元素自身的信息之外,还需要和存放其后继元素所在的存储单元的地址。链表不具有按序号随机访问第i个元素的特点,必须通过标识链表的头指针(或尾指针)“顺藤摸瓜”才能找到第i个结点。
【答案】B
9.线性表的静态链表存储结构与顺序存储结构相比优点是 。
A.所有的操作算法简单 B.便于插入和删除
C.便于利用零散的存储器空间 D.便于随机存取
【分析】静态链表采用的是链式方式存储线性表,因此其具有链式存储的特点。
【答案】B
10.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素算法的时间复杂度为 。
A.O(log2n) B.O(1) C.O(n) D.O(n
文档评论(0)