资源描述
第2章 自测卷答案
一、填空
1.顺序表中逻辑上相邻的元素的物理位置 相互 相邻。单链表中逻辑上相邻的元素的物理位置 不 相邻。
2.在单链表中,除了首元结点外,任一结点的存储位置由 其直接前驱结点值域 指示。
3. 在n个结点的单链表中要删除已知结点*p,需找到它的 地址 。
二、判断正误(在正确的说法后面打勾,反之打叉)
1. 链表的每个结点中都恰好包含一个指针。 X
2. 链表的物理存储结构具有同链表一样的顺序。X
3. 链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。X
4. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。Y
5. 顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 Y
6. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。X
7. 线性表在物理存储空间中也一定是连续的。X
8. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。X
9. 顺序存储方式只能用于存储线性结构。X
10. 线性表的逻辑顺序与存储顺序总是一致的。X
三、单项选择题
( A)1. 链接存储的存储结构所占存储空间:
(A) 分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
(B) 只有一部分,存放结点值
(C) 只有一部分,存储表示结点间关系的指针
(D) 分两部分,一部分存放结点值,另一部分存放结点所占单元数
(B )2. 链表是一种采用 存储结构存储的线性表;
(A)顺序 (B)链式 (C)星式 (D)网状
( D )3. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址:
(A)必须是连续的 (B)部分地址必须是连续的
(C)一定是不连续的 (D)连续或不连续都可以
(B )4. 线性表L在 情况下适用于使用链式结构实现。
(A)需经常修改L中的结点值 (B)需不断对L进行删除插入
(C)L中含有大量的结点 (D)L中结点结构复杂
( C)5. 单链表的存储密度
(A)大于1; (B)等于1; (C)小于1; (D)不能确定
( A)6、在单链表的一个结点中有 个指针。
A、1 B、2 C、3 D、4
( D )7、设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用 最节省时间。
A、单链表 B、单循环链表
C、带尾指针的单循环链表 D、带头结点的双循环链表
(B )8、在单链表指针为p的结点之后插入指针为s的结点,正确的操作是 。
A、p->next=s;s->next=p->next; B、s->next=p->next;p->next=s;
C、p->next=s;p->next=s->next; D、p->next=s->next;p->next=s;
(C )9、对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是 。
A、head==NULL B、head→next==NULL
C、head→next==head D、head!=NULL (head指向谁的)
( c )10、在双向链表指针p的结点前插入一个指针q的结点操作是 。
A、p->prior=q;q->next=p;p->prior->next=q;q->prior=q;
B、p->prior=q;p->prior->next=q;q->next=p;q->prior=p->prior;
C、q->next=p;q->prior=p->prior;p->Prior->next=q;p->prior=q;
D、q->prior=p->prior;q->next=q;p->prior=q;p->prior=q;
(A )11、在一个单链表中,若删除P所指结点的后续结点,则执行 。
A、p-next=p->next->next;
B、p=p->next;p->next=p->next->next;
C、p->next=p->next;
D、p=p->next->next;
( A )12、不带头结点的单链表head为空的判定条件是。
A、head=NULL B、head->next=NULL
C、head->next=head D、head!=NULL
( B )13、链表不具有的特点是 。
A、插入、删除不需要移动元素
B、可随机访问任一元素
C、不必事先估计存储空间
D、所需空间与线性长度成正比
× )1. 链表的每个结点中都恰好包含一个指针。
答:错误。链表中的结点可含多个指针域,分别存放多个指针。例如,双向链表中的结点可以含有两个指针域,分别存放指向其直接前趋和直接后继结点的指针。
( × )2. 链表的物理存储结构具有同链表一样的顺序。错,链表的存储结构特点是无序,而链表的示意图有序。
( × )3. 链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。错,链表的结点不会移动,只是指针内容改变。
( × )4. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。
错,混淆了逻辑结构与物理结构,链表也是线性表!且即使是顺序表,也能存放记录型数据。
( × )5. 顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。
错,正好说反了。顺序表才适合随机存取,链表恰恰适于“顺藤摸瓜”
( × )6. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。
错,前一半正确,但后一半说法错误,那是链式存储的优点。顺序存储方式插入、删除运算效率较低,在表长为n的顺序表中,插入和删除一个数据元素,平均需移动表长一半个数的数据元素。
( × )7. 线性表在物理存储空间中也一定是连续的。
错,线性表有两种存储方式,顺序存储和链式存储。后者不要求连续存放。
( × )8. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。
错误。线性表有两种存储方式,在顺序存储时,逻辑上相邻的元素在存储的物理位置次序上也相邻。
( × )9. 顺序存储方式只能用于存储线性结构。
错误。顺序存储方式不仅能用于存储线性结构,还可以用来存放非线性结构,例如完全二叉树是属于非线性结构,但其最佳存储方式是顺序存储方式。(后一节介绍)
( × )10. 线性表的逻辑顺序与存储顺序总是一致的。
错,理由同7。链式存储就无需一致。
三、填空题
1、在带头结点的单链表L中,若要删除第一个元素,则需要执行下列三条语句:_______________;L→next=U→next;free(U)。
2、在单链表L中,若要在指针P所指结点之后插入由指针S所指的结点,则需执行下列语句:S->next=P->next;______________;
3、在带有头结点的单链表L中,第一个元素结点的指针是_____________。
4、双循环链表L中由指针P所指向的某结点为尾结点的条件是_______________。
1. 【严题集2.2①】在顺序表中插入或删除一个元素,需要平均移动 表中一半元素,具体移动的元素个数与 表长和该元素在表中的位置 有关。
2. 线性表中结点的集合是 有限 的,结点间的关系是 一对一 的。
3. 向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动 n-i+1 个元素。
4. 向一个长度为n的向量中删除第i个元素(1≤i≤n)时,需向前移动 n-i 个元素。
5. 在顺序表中访问任意一结点的时间复杂度均为 O(1) ,因此,顺序表也称为 随机存取 的数据结构。
6. 【严题集2.2①】顺序表中逻辑上相邻的元素的物理位置 必定相邻。单链表中逻辑上相邻的元素的物理位置 不一定 相邻。
7. 【严题集2.2①】在单链表中,除了首元结点外,任一结点的存储位置由 其直接前驱结点的链域的值 指示。
8.在n个结点的单链表中要删除已知结点*p,需找到它的前驱结点的地址,其时间复杂度为O(n)。
data
next
四、算法设计题
1、设有两个单链表L和L1,各结点结构如下:
试画出该链表的结构图,并编写算法,判断单链表L1是否与单链表L相同,相同返回1,不同返回0。
五、简答题
1. 【严题集2.3②】试比较顺序存储结构和链式存储结构的优缺点。在什么情况下用顺序表比链表好?
答:① 顺序存储时,相邻数据元素的存放地址也相邻(逻辑与物理统一);要求内存中可用存储单元的地址必须是连续的。
优点:存储密度大(=1?),存储空间利用率高。缺点:插入或删除元素时不方便。
②链式存储时,相邻数据元素可随意存放,但所占存储空间分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
优点:插入或删除元素时很方便,使用灵活。缺点:存储密度小(<1),存储空间利用率低。
顺序表适宜于做查找这样的静态操作;链表宜于做插入、删除这样的动态操作。
若线性表的长度变化不大,且其主要操作是查找,则采用顺序表;
若线性表的长度变化较大,且其主要操作是插入、删除操作,则采用链表。
2 .【严题集2.1①】描述以下三个概念的区别:头指针、头结点、首元结点(第一个元素结点)。在单链表中设置头结点的作用是什么?
答:首元结点是指链表中存储线性表中第一个数据元素a1的结点。为了操作方便,通常在链表的首元结点之前附设一个结点,称为头结点,该结点的数据域中不存储线性表的数据元素,其作用是为了对链表进行操作时,可以对空表、非空表的情况以及对首元结点进行统一处理。头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针。若链表中附设头结点,则不管线性表是否为空表,头指针均不为空。否则表示空表的链表的头指针为空。这三个概念对单链表、双向链表和循环链表均适用。是否设置头结点,是不同的存储结构表示同一逻辑结构的问题。
头结点
head
à
data
link
头指针 首元结点
简而言之,
头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针;
头结点是在链表的首元结点之前附设的一个结点;数据域内只放空表标志和表长等信息(内放头指针?那还得另配一个头指针!!!)
首元素结点是指链表中存储线性表中第一个数据元素a1的结点。
这可让他犯了难,施工现场距离项目部很远,没有车还真是不方便office, branch offices (jurisdiction), risk management, marketing management sector through supervision and inspection found problems, should be assigned the investigators are corrected in a timely manner. 27th the fifth chapter penalty under any of the following acts, then the relevant provisions to punish the investigators, according to the Bank. To constitute a crime shall be investigated for criminal responsibility: (A) on the business that are not involved in the investigation, issued a survey. (B) customer credit information are not thorough verification. (Iii) to participate in credit customer survey is not in place, customers and data is incomplete, untrue; he knows bear a counterfeited clients issuing credit. (D) does not provide for due diligence of credit business, pre-loan investigation form, concealing facts or providing false information or should be found in a normal investigation failed to discover the risk factors, lead to the review and approval policy errors, loan risk. (Five) on loan guarantees of survey not in place, not by provides on arrived, and pledge real for field verification, and assessment, and identification and registration, not according to provides on guarantor of guarantees qualification and guarantees capacity for survey verified, led to guarantees loan lost authenticity, and legitimacy, and effectiveness of; cycle loan business in the of mortgage5
展开阅读全文