第二章 线性表:本章将介绍绍线性表的定义、运算,讨论线性表的两种存储结构——顺序表和链表,以及在这两种存储结构上实现的基本运算。2.1线性表的概念:本节主要介绍线性表的定义和线性表的基本操作。
2.2线性表的顺序存储:本节主要介绍线性表顺序存储的概念和线性表顺序存储基本操作的实现。
2.3线性表的链式存储(上):逻辑上线性表其存储方式有顺序存储和链式存储。这一讲主要介绍链式存储中单链表的定义以及头插法和尾插法创建单链表的实现过程。
2.4线性表的链式存储(中):线性表的顺序存储不适合做插入与删除操作,而链表的特性使在线性表插入删除操作实现起来非常便利,所以需要经常做插入和删除操作的线性表适合采取链式存储。本讲主要介绍单链表的插入和删除操作的实现。
2.5线性表的链式存储(下):单链表的每个结点中只有一个指向直接后继结点的next指针域,因此链表操作时只能按单一方向从前向后进行搜索,无法向前搜索,即使引入单循环链表问题也没有根本解决,因此引入了双向链表,即在链表的每一个结点中有两个指针域,一个指向直接前驱一个指向直接后继。本节主要学习单循环链表以及双向链表的插入删除操作的实现。
[单选题]线性表是(  )。
一个无限序列,可以为空。
一个无限序列,不能为空。
一个有限序列,不能为空。
一个有限序列,可以为空。
答案:一个有限序列,可以为空
[单选题]若某线性表中最常用的操作是取第i个元素和查找第i个元素的前驱,则采用( )存储方法最节省时间。
循环链表
顺序表
双向链表
单链表
答案:顺序表
[单选题]单链表中,增加一个头结点的目的是为了(  )。
标识表结点中首结点的位置
说明单链表是线性表的链式存储
方便运算的实现
使单链表至少有一个结点
答案:方便运算的实现
[单选题]在带有头结点的单链表Head中,要向表头插入一个由指针p指向的结点,则执行(  )。
p->next=Head->next;  Head->next=p;
p->next=Head;  p=Head;
Head=p;p->next=Head;
p->next=Head;  Head=p;
答案:p->next=Head->next; Head->next=p;
[单选题]在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是()。
访问第i个元素(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
在第i个元素后插入一个新结点(1≤i≤n)
将n个元素从小到大排序
删除第i个元素(1≤i≤n)
答案:访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
[多选题]下列说法正确的有(  )。
算法和程序原则上没有区别,在讨论数据结构时二者通用
所谓数据的逻辑结构是指数据元素之间的逻辑关系  
数据的逻辑结构与数据元素本身的内容和形式无关
从逻辑关系上讲,数据结构分为两大类:线性结构和非线性结构
“同一数据逻辑结构中的所有数据元素都具有相同的特性”是指数据元素所包含的数据项的个数相等
答案:一定形式的运动意味着一定的变化发展的实质是新事物的产生和旧事物的灭亡事物的相互联系包含事物的运动、变化和发展变化的基本趋势是发展
[判断题]线性表的逻辑顺序和存储顺序总是一致的。


答案:错
[判断题]在线性表的顺序存储结构中,插入和删除时移动元素的个数与该元素的位置有关。


答案:对
[判断题]顺序存储结构只能存储线性结构,链式存储结构只能存储非线性结构。


答案:错
[判断题]线性表的链式存储结构优于顺序存储结构。


答案:错
[判断题]链式存储方式以指针表示元素间的逻辑关系。


答案:对

点赞(0) dxwkbang
返回
顶部