《数据结构试卷1线性表.doc》由会员分享,可在线阅读,更多相关《数据结构试卷1线性表.doc(59页珍藏版)》请在金锄头文库上搜索。
1、题目部分,(卷面共有100题,855.0分,各大题标有题量和总分)一、单项选择题(39小题,共91.0分)(3分)1将下图所示的S所指结点加到P所指结点之后,其语句应为: A、s- next = p +l ;p-next=s; B、(*p).Next=s; (*s)next=(*p).next; C、s-nex=p- next; p-next =s- next; D、s-nex=p- next; p-nex=s; (2分)2顺序存储结构的主要缺点是不利于插入或删除操作。( )(2分)3在双向链表存储结构中,删除p所指的结点时须修改指针A、 (p.llink).rlink:=p.rlink (p
2、.rlink).llink:=p.llink;B、 p.llink:=(p.llink).llink (p.llink).rlink:=p;C、 (p.rlink).llink:=p p.rlink:=(p.rlink).rlinkD、 p.rlink:=(p.llink).llink p.llink:=(p.rlink).rlink;(3分)4对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是A、head=NULL B、headnext=NULL C、headnext=head D、head!=NULL(2分)5在单链表指针为p的结点之后插入指针为s的结点,正确的操作是A、p
3、-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;(2分)6双向链表中有两个指针域,llink和rlink,分别指回前驱及后继,设p指向链表中的一个结点,q指向一待插入结点,现要求在p前插入q,则正确的插入为 A、p.llink:=q; q.rlink:=p; p.llink.rlink:=q; q.llink:=p.llink;B、q.llink:=p.llink; p.llink.rlink:=q; q.rlink:=p; p.llink:
4、=q.rlink; C、q.rlink:=p; p.rlink:=q; p.llink.rlink:=q; q.rlink:=p;D、p.llink.rlink:=q; q.rlink:=p; q.llink:=p.llink; p.llink:=q;(2分)7在双向循环链表中,在p指针所指向的结点前插入一个指针q所指向的新结点,其修改指针的操作是注:双向链表的结点结构为(llink,data,rlink)。 供选择的答案:A、 p.llink:=q; q.rlink:=p; p.llink.rlink:=q; q.llink:=q;B、 p.llink:=q; p.llink.rlink:=
5、q ; q.rlink:= p; q.llink:=p.llink;C、 q.rlink:=p; q.llink:=p.llink; p.llink.rlink:=q; p.llink:=q;D、 q.llink:=p.llink;q.rlink:=p; p.llink:=q;p.llink:=q;(2分)8循环链表H的尾结点P的特点是A、P.NEXT:=H B、P.NEXT:= H.NEXT C、P:=H D、P:=H.NEXT(2分)9非空的循环单链表head的尾结点p满足A、p.link=head B、p.link=NIL C、p=NIL D、p= head(2分)10若长度为n的线性表
6、采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为( )(1=inext=p+l;p-next=s; B、(*p)next=s;(*s).next=(*p).next; C、s-next=p-next;p-next=s-next; D、s-next=p-next;p-next=s;(3分)18(1)静态链表既有顺序存储的优点,又有动态链表的优点。所以,它存取表中第i个元素的时间与i无关 (2)静态链表中能容纳元素个数的最大数在定义时就确定了,以后不能增加; (3)静态链表与动态链表在元素的插入、删除上类似,不需做元素的移动。 以上错误的是_ A、(1)、(2) B、(1) C、
7、(1)、(2)、(3) D、(2)(3分)19若长度为n的线性表采用顺序存储结构,在其第一个位置插入个新元素算法的时间复杂度为_。 A、o(N) B、 0(1) C、o(n) D、o()(3分)20线性表是具有n个( )的有限序列。A、表元素 B、字符 C、数据元素 D、数据项 E、信息项(2分)21静态链表中指针表示的是A、 内存地址 B、数组下标 C、下一元素地址 D、左、右孩子地址(2分)22若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用( )存储方式最节省运算时间。A、单链表 B、双链表 C、单循环链表 D、带头结点的双循环链表(2分)23设一个链表最常用
8、的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。A、单链表 B、单循环链表 C、带尾指针的单循环链表 D、带头结点的双循环链表(2分)24线性表是具有n个( )的有限序列(n0)。A、表元素 B、字符 C、数据元素 D、数据项 E、信息项(2分)25下面关于线性表的叙述中,错误的是哪一个?A、线性表采用顺序存储,必须占用一片连续的存储单元。B、线性表采用顺序存储,便于进行插入和删除操作。C、线性表采用链接存储,不必占用一片连续的存储单元。D、线性表采用链接存储,便于插入和删除操作。(2分)26下述哪一条是顺序存储结构的优点?A、存储密度大 B、插入运算方便 C、删除运算方便 D、可方便地用于各种逻辑结构的存储表示(2分)27L 是线性表,已知 ListLength(L) 的值是 5 ,运算 DeleteList ( L , 2 )后 ListLength ( L )的值是。A、 5 B、 0 C、 4 D、 6 (2分)28下列说法正确的是。