第二章线性表测试题
数据结构第二章线性表习题
数据结构第二章线性表习题02线性表【单选题】1.以下不属于线性结构特点的就是(c)。
a、存有且仅有一个数据元素并无轻易前驱b、存有且仅有一个数据元素并无轻易后继c、有且仅有一个数据元素既无直接前驱又无直接后继d、大多数据元素存有且仅有一个轻易前驱,存有且仅有一个轻易后继2.线性表是具有n个(c)的有限序列。
a、信息项b、字符c、数据元素d、数据项3.线性表的逻辑顺序与存储顺序总是一致的,这种说法(b)。
a、正确b、不正确4.在顺序表,数据元素e1与其轻易后继e2在存储边线上(a)。
a、必相连b、必不相连c、可以相连可不相连5.在长为n的顺序表中删除一个数据元素,平均需移动(d)个数据元素。
a、nb、n-1c、n/2d、(n-1)/26.在短为n的顺序表填入一个数据元素,平均值须要移动(c)个数据元素。
a、nb、n-1c、n/2d、(n-1)/27.单链表是一种(b)存取的存储结构a、随机b、顺序c、索引d、连续8.以下属顺序存储结构优点的就是(a)。
a、存储密度大b、插入运算方便c、删除运算方便d、可方便地用于各种逻辑结构的存储表示9.以下属于单链表中优点的就是(c)。
a、顺序存取b、插入操作能在o(1)的时间复杂度上完成c、插入时不需移动数据元素d、节省存储空间10.在单链表,数据元素e1与其轻易后继e2在存储边线上(c)。
a、必相连b、必不相连c、可以相连可不相连11.以下属单链表与循环链表区别的是(b)。
a、结点结构相同b、搜寻结点的算法中,循环完结条件相同c、对存储空间连续性的建议相同d、对与否涵盖头结点的建议相同12.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用(a)存储方式最节省时间。
a、顺序表中b、双链表中c、率先垂范结点的双向循环链表d、单循环链表13.若某线性表最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用(d)存储方式最节省运算时间。
第2章 线性表试题
第2章重点:单链表的存储结构,插入和删除的算法一、填空. 线性表中结点的集合是的,结点间的关系是的。
3. 向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动个元素。
4. 向一个长度为n的向量中删除第i个元素(1≤i≤n)时,需向前移动个元素。
6. 【严题集2.2①】顺序表中逻辑上相邻的元素的物理位置相邻。
单链表中逻辑上相邻的元素的物理位置相邻。
7. 【严题集2.2①】在单链表中,除了首元结点外,任一结点的存储位置由指示。
三、单项选择题()()1.数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为:(A)存储结构(B)逻辑结构(C)顺序存储结构(D)链式存储结构()2.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是(A)110 (B)108 (C)100 (D)120()3. 在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是:(A)访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)(B)在第i个结点后插入一个新结点(1≤i≤n)(C)删除第i个结点(1≤i≤n)(D)将n个结点从小到大排序()4. 向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动个元素(A)8 (B)63.5 (C)63 (D)7()5. 链接存储的存储结构所占存储空间:(A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针(B)只有一部分,存放结点值(C)只有一部分,存储表示结点间关系的指针(D)分两部分,一部分存放结点值,另一部分存放结点所占单元数()6. 链表是一种采用存储结构存储的线性表;(A)顺序(B)链式(C)星式(D)网状()7. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址:(A)必须是连续的(B)部分地址必须是连续的(C)一定是不连续的(D)连续或不连续都可以()8.线性表L在情况下适用于使用链式结构实现。
第2章 线性表(习题).doc
不必占用一片地址连续的(A) head= =NULL (B) head-〉线性表采用链式存第2章线性表习题一、选择题1.线性表是()。
(A)一个有限序列,可以为空;(B) 一个有限序列,不能为空;(0 一个无限序列,可以为空;(D) —个无序序列,不能为空。
2.从一个具有n个结点的单链表中查找值为x结点,在查找成功情况下,需平均比较个结点。
(A)n (B) n/2 (C) (n-l)/2 (D) (n+l)/23.线性表采用链式存储时,其各元素存储地址()。
(A)必须是连续的;(B)部分地址必须是连续的;(0 一定是不连续的;(D)连续与否均可以。
4.用链表表示线性表的优点是()。
(A)便于随机存取(B)花费的存储空间较顺序存储少(C)便于插入和删除(D)数据元素的物理顺序与逻辑顺序相同5. ________ 插入、删除速度快,但不能随机存取。
(A)链接表(B)顺序表(C)顺序有序表(D)上述三项无法比较6.若希望从链表中快速确定一个结点的前驱,则链表最好采用——方式。
(A)单链表(B)循环单链表(C)双向链表(D)任意7.下面关于线性表的叙述错误的是()=线性表采用顺序存储,必须占用一片地址连续的单元; 线性表采用顺序存储,便于进行插入和删除操作;线性表采用链式存储,不便于进行插入和删除操作;8.带头结点的单链表head为空的判定条件是—(C) head-〉next= =head (D) head!=NULL9.若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素, 则采用()存储方式最节省运算时间。
(A)单链表(B)仅有头指针的单循环链表(0双链表(D)仅有尾指针的单循环链表10.在循环双链表的p所指结点之后插入s所指结点的操作是_______________ o(A) p-〉next=s; s-〉prior=p; p-〉next-〉prior=s; s-〉next=p-〉next;(B) p-〉next=s; p-〉next-〉prior=s; s-〉prior=p; s-〉next=p-〉next;(C) s-〉prior=p; s-〉next=p-〉next; p-〉next=s; p-〉next-〉prior=s;(D) s-〉prior=p; s-〉next=p-〉next; p-〉next-〉prior=s; p->next =s;二、填空题1、对于采用顺序存储结构的线性表,当随机插入或删除一个数据元素时,平均约需移动表中_________ 元素。
第二章线性表习题
第二章线性表习题1 .填空题(1) 链表中逻辑上相邻的元素的物理位置( ) 相连。
(2) 在单链表中除首结点外,任意结点的存储位置都由( ) 结点中的指针指示。
(3) 在单链表中,设置头结点的作用是在插入或删除首结点时不必对( ) 进行处理。
(4) 已带头结点的单链表L ,指针p 指向L 链表中的一个结点,指针q 是指向L 链表外的一个结点,则:在指针p 所指结点后插入q 所指结点的语句序列是( ) ;在指针p 所指结点前插入q 所指结点的语句序列是( ) ;将q 所指结点插入在链表首结点的语句序列是( ) ;将q 所指结点插入在链表尾结点的语句序列是( ) 。
(5) 已知带表头结点的单链表L ,指针p 指向L 链表中的一个结点(非首结点,非尾结点),则:删除指针p 所指结点的直接后继结点的语句是( ) 。
删除指针p 所指结点的直接前驱结点的语句序列是( ) 。
删除指针p 所指结点的语句序列是( ) 。
删除首结点的语句序列是( ) 。
⑤删除尾结点的语句序列是( ) 。
(6) 已知指针p 指向双向链表中的一个结点(非首结点,非尾结点),则:将结点s 插入在指针p 所指结点的直接后继位置的语句是( ) 。
将结点s 插入在指针p 所指结点的直接前驱位置的语句是( ) 。
删除指针p 所指结点的直接后继结点的语句序列是( ) 。
删除指针p 所指结点的直接前驱结点的语句序列是( ) 。
⑤删除指针p 所指结点的语句序列是( ) 。
(7) 线性表的存储结构有顺序存储和( ) 存储两种。
(8) 线性表的元素长度为4 ,在顺序存储结构下Loc(ai)=2000 ,则Loc(ai +1)=( ) 。
(9) 线性表a 的元素长度为L ,在顺序存储结构下Loc(ai)=Loc(a1)+( ) 。
(10) 在线性表的链式存储结构中,某结点的指针字段指向该结点的( ) 两种存储。
(11) 线性表的元素长度为4 ,Loc(ai +1)=1000 ,则Loc(a3)=( ) 。
数据结构第二章 线性表练习及答案
一、选择题1、用单链表方式存储的线性表,存储每个结点需要两个域,一个是数据域,另一个是()A、当前结点所在的地址域B、指针域C、空指针域D、空闲域2、不带头结点的单链表head为空的判断条件是()A、head==NULLB、head->next==NULLC、head->data==NULLD、head!=NULL3、在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在p和q之间插入s结点,则执行()A、s->next=p; q->next=s;B、p->next=s->next; s->next=p;C、q->next=s->next; s->next=p;D、p->next=s; s->next=q;4、在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是()A、O(1)B、O(n)C、O(n2)D、O(nlog2n)5、一个单链表中,若删除p所指结点的后续结点,则执行()A、p->next=p->next->next;B、p=p->next; p->next=p->next->next;C、p->next=p;D、p=p->next->next;6、已知一个顺序存储的基本线性表,设每个结点需占m个存储单元,若第一个结点的地址为d1,则第i个结点的地址为()A、d1+(i-1)*mB、d1+i*mC、d1-i*mD、d1+(i+1)*m7、在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是()A、访问第i个结点(1<=i<=n)和求第i个结点的直接前驱(2<=i<=n)B、在第i个结点后插入一个新结点(1<=i<=n)C、删除第i个结点(1<=i<=n)D、将n个结点从小到大排序8、下面给出的算法段是要把一个q所指新结点作为非空双向链表中的p所指结点的前驱结点插入到该双向链表中,能正确完成要求的算法段是()A、q->next=p; q->prior=p->prior; p->prior=q; p->prior->next=q;B、p->prior=q; q->next=p; p->prior->next=q; q->prior=p->prior;C、q->prior=p->prior; q->next=p; p->prior->next=q; p->prior=q;D、以上都不对9、在循环双链表的p所指结点之后插入s所指结点的操作是()A、p->next=s; s->prior=p; p->next->prior=s; s->next=p->next;B、p->next=s; p->next->prior=s; s->prior=p; s->next=p->next;C、s->prior=p; s->next=p->next; p->next=s; p->next->prior=s;D、s->prior=p; p->next->prior=s; s->next=p->next; p->next=s;10、从具有n个结点的单链表中查找其值等于x结点时,在查找成功的情况下,需平均比较()个结点。
第二章 线性表 练习题
一、选择题1.线性表的链接实现有利于( A )运算。
(A)插入 (B)读表元 (C)查找 (D)定位2.设单链表中指针p指向结点A,若要删除A之后的结点(若存在),则修改指针的操作为( A)。
(A)P一>next=p一>next一>next (B)p=P一>next(C)p=P一>next一>next (D)p一>next=p3.线性表采用链式存储时,其地址( D )。
(A)必须是连续的 (B)部分地址必须是连续的(c)一定是不连续的 (D)连续与否均可以4.在一个具有n个结点的单链表中查找其值等于x的结点.在查找成功的情况下需平均比较( c)个元素结点。
(A) n/2 (B) n (C) (n+1)/2 (D) (n-1)/25.在双向循环链表中,在p所指的结点之后插入s指针所指的结点,其操作是(B)。
(A) p->next=s; s->prior=p; p->next->prior=s; s->next=p->next;(B) s->prior=p; s->next=p->next; p->next=s; p->next->prior=s;(C) p->next=s; p->next->prior=s; s->prior=p; s->next=p->next;(D) s->prior=p; s->next=p->next; p->next->prior=s; p->next=s;6.已知一个有序表为(13,18,24,35,47,50,62,83,90,115,134),当二分查找值为90的元素时,需( D )次比较可查找成功。
(A)1 (B)2 (C)3 (D)47.在顺序存储的线性表R[029]上进行顺序查找的平均查找长度为(①),进行二分查找的平均查找长度为(②),讲行分块查找(设分为5块)的平均查找长度为(③)①(A)15 (B)15.5 (C)16 (D)20②(A)4 (B)62/15 (C)64/15 (D)25/6③(A)6 (B)11 (C)5 (D)6.58.若线性表最常用的操作是存取第i个元素及其前驱元素的值,则采用( B )存储方式最节省时间。
数据库第二章线性表自测题
数据库第二章线性表自测题第二章线性表一、填空题1.通常将含n(n>=0)个结点的线性表表示成(a1,a2,……a n)。
a1称为______结点,a n称为______结点,i称为a i在线性表中的________。
对任意一对相邻结点a i、a i┼1(1<=i<="" i称为a="" p="">2.线性表的基本特征是:若表非空,则除起始结点没有直接______外,其他结点有且仅有一个直接______;除终端结点没有直接______外,其它结点有且仅有一个直接______.3.线性表所含结点的个数称为线性表的______,简称______.4.表长为O的线性表称为______5.线性表典型的基本运算包括:______、______、______、______、______、______等六种。
6.顺序表的特点是______。
7.顺序表的类型定义可经编译转换为机器级。
假定每个datatype 类型的变量占用k(k>=1)个内存单元,其中,b是顺序表的第一个存储结点的第一个单元的内存地址,那么,第i个结点a i的存储地址为______。
8.以下为顺序表的插入运算,分析算法,请在______处填上正确的语句。
void insert_sqlist(sqlist L,datatype x,int i)/*将X插入到顺序表L的第i个位置,假设表L不会溢出*/{ if( L.length == L.list size) error(“表满”);if(i<0||i>L.length)error(“非法位置”);for(j=L.length-1;j>=i+1;j--)______;L.elem[i]=x;L.length++;}9.对于顺序表的插入算法insert_sqlist来说,若以结点移动为标准操作,则插入算法的最坏时间复杂度为________,平均时间复杂度为________。
数据结构--线性表习题及答案
数据结构--线性表习题及答案第⼆章线性表⼀、选择题1、若长度为n的线性表采⽤顺序存储结构,在其第i个位置插⼊⼀个新元素算法的时间复杂度()。
A. O(log2n)B.O(1)C. O(n)D.O(n2)2、若⼀个线性表中最常⽤的操作是取第i个元素和找第i个元素的前趋元素,则采⽤()存储⽅式最节省时间。
A. 顺序表B. 单链表C. 双链表D. 单循环链表3、具有线性结构的数据结构是()。
A. 图B. 树C. ⼴义表D.栈4、在⼀个长度为n的顺序表中,在第i个元素之前插⼊⼀个新元素时,需向后移动()个元素。
A. n-iB. n-i+1C. n-i-1D. i5、⾮空的循环单链表head的尾结点p满⾜()。
A. p->next==headB. p->next==NULLC. p==NULLD. p==head6、链表不具有的特点是()。
A. 可随机访问任⼀元素B. 插⼊删除不需要移动元素C. 不必事先估计存储空间D. 所需空间与线性表长度成正⽐7、在双向循环链表中,在p指针所指的结点后插⼊⼀个指针q所指向的新结点,修改指针的操作是()。
A. p->next=q;q->prior=p;p->next->prior=q;q->next=q;B. p->next=q;p->next->prior=q;q->prior=p;q->next=p->next;C. q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;D. q->next=p->next;q->prior=p;p->next=q;p->next=q;8、线性表采⽤链式存储时,结点的存储地址()。
A. 必须是连续的B. 必须是不连续的C. 连续与否均可D. 和头结点的存储地址相连续9、在⼀个长度为n的顺序表中删除第i个元素,需要向前移动()个元素。
第二章线性表(答案)
第二章线性表(答案)第二章线性表一、选择题1.一个线性表第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是( )(A)110 (B)108(C)100 (D)1202. 向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动()个元素。
(A)64(B)63 (C)63.5 (D)73.线性表采用链式存储结构时,其地址()。
(A) 必须是连续的(B) 部分地址必须是连续的(C) 一定是不连续的(D) 连续与否均可以4. 在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行()(A)s->next=p;p->next=s; (B)s->next=p->next;p->next=s;(C)s->next=p->next;p=s; (D)p->next=s;s->next=p;5.在一个单链表中,若删除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;6.下列有关线性表的叙述中,正确的是()(A)线性表中的元素之间隔是线性关系(B)线性表中至少有一个元素(C)线性表中任何一个元素有且仅有一个直接前趋(D)线性表中任何一个元素有且仅有一个直接后继7.线性表是具有n个()的有限序列(n≠0)(A)表元素(B)字符(C)数据元素(D)数据项二、判断题1.线性表的链接存储,表中元素的逻辑顺序与物理顺序一定相同。
(F )2.如果没有提供指针类型的语言,就无法构造链式结构。
(T )3.线性结构的特点是只有一个结点没有前驱,只有一个结点没有后继,其余的结点只有一个前驱和后继。
数据结构 线性表 习题
第二章线性表一、选择题1.线性表是()A.一个有限序列,可以为空B.一个有限序列,不可以为空C.一个无限序列,可以为空D.一个无限序列,不可以为空2.一维数组与线性表的特征是()。
A.前者长度固定,后者长度可变B.两者长度均固定C.后者长度固定,前者长度可变D.两者长度均可变3.用单链表方式存储的线性表,存储每个结点需要两个域,一个数据域,另一个是( ).A.当前结点所在地址域B.指针域C.空指针域D.空闲域4.用链表表示线性表的优点是()。
A.便于随机存取B.便于进行插入和删除操作C.占用的存储空间较顺序表少D.元素的物理顺序与逻辑顺序相同5.在具有 n 个结点的单链表中,实现___的操作,其算法的时间复杂度都是O(n)。
A.遍历链表和求链表的第i个结点D.删除地址为P的结点的后继结点B.在地址为P的结点之后插入一个结点 C.删除开始结点6.下面关于线性表的叙述中,错误的是()。
A.线性表采用顺序存储必须占用一片连续的存储单元B.线性表采用顺序存储便于进行插入和删除操作C.线性表采用链式存储不必占用一片连续的存储单元D.线性表采用链式存储便于进行插入和删除操作7.已知单链表的每个结点包括一个指针域next,它指向该结点的后继结点。
现要将指针 q 指向的新结点插入到指针 p 指向的结点之后,下面的操作序列中正确的是()。
A . q = p->next; p->next = q->next ;B . p->next = q->next; q = p->next ;C . q->next = p->next; p->next = q ;D . p->next = q; q->next = p->next ;8.设 a l,a2, a3为三个结点; p , 10 , 20 代表地址,则如下的链表存储结构称为()。
A.链表B.单链表C.双向循环链表D.双向链表9.单链表的存储密度()。
第2章 线性表练习题
第2章线性表2.1 描述以下三个概念的区别:头指针,头结点,首元结点(第一个元素结点)。
2.2 填空题。
(1) 在顺序表中插入或删除一个元素,需要平均移动元素,具体移动的元素个数与有关。
(2) 顺序表中逻辑上相邻的元素的物理位置紧邻。
单链表中逻辑上相邻的元素的物理位置紧邻。
(3) 在单链表中,除了首元结点外,任一结点的存储位置由指示。
(4) 在单链表中设置头结点的作用是。
2.3 在什么情况下用顺序表比链表好?2.4 对以下单链表分别执行下列各程序段,并画出结果示意图。
2.5 画出执行下列各行语句后各指针及链表的示意图。
L=(LinkList)malloc(sizeof(LNode)); P=L;for(i=1;i<=4;i++){P->next=(LinkList)malloc(sizeof(LNode));P=P->next; P->data=i*2-1;}P->next=NULL;for(i=4;i>=1;i--) Ins_LinkList(L,i+1,i*2);for(i=1;i<=3;i++) Del_LinkList(L,i);2.6 已知L是无表头结点的单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适的语句序列。
a. 在P结点后插入S结点的语句序列是__________________。
b. 在P结点前插入S结点的语句序列是__________________。
c. 在表首插入S结点的语句序列是__________________。
d. 在表尾插入S结点的语句序列是__________________。
(1) P->next=S;(2) P->next=P->next->next;(3) P->next=S->next;(4) S->next=P->next;(5) S->next=L;(6) S->next=NULL;(7) Q=P;(8) while(P->next!=Q) P=P->next;(9) while(P->next!=NULL) P=P->next;(10) P=Q;(11) P=L;(12) L=S;(13) L=P;2.7 已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适的语句序列。
数据结构第二章习题
数据结构第二章习题第2章线性表一、单项选择题1.线性表就是具备n个_________的非常有限序列。
a.表元素b.字符c.数据元素d.数据项2.线性表是_________。
a.一个非常有限序列,可以为空b.一个非常有限序列,不可以为空c.一个无穷序列,可以为空d.一个无穷序列,不可以为空3.线性表使用链表存储时,其地址_________。
a.必须是连续的b.一定是不连续的c.部分地址必须是连续的d.连续与否均可以4.链表不具备的特点是_________。
a.可以随机出访任一结点b.填入删掉不须要移动元素c.不必事先估算存储空间d.所须要空间与其长度成正比5.设立线性表存有n个元素,以下操作方式中,_________在顺序单上同时实现比在链表上同时实现效率更高。
a.输出第i(1≤i≤n)个元素值b.互换第1个元素与第2个元素的值c.顺序输入这n个元素的值d.输出与给定值x相等的元素在线性表中的序号6.设立线性表中存有2n个元素,以下操作方式中,_________在单链单上同时实现Obrero在顺序单上同时实现效率更高。
a.删掉选定的元素b.在最后一个元素的后面插入一个新元素c.顺序输出前k个元素d.互换第i个元素和第2n-i-1个元素的值(i=0,1…,n-1)7.如果最常用的操作是取第i个结点及其前驱,则采用_________存储方式最节省时间。
a.单链表中b.双链表中c.单循环链表d.顺序表8.与单链表相比,双链表的优点之一是_________。
a.填入和删掉操作方式更直观b.可以展开随机出访c.可以省略字段指针或表尾指针d.出访前后相连结点更有效率9.率先垂范结点的单链表中l为觑的认定条件就是_________。
a.l==nullb.l->next==nullc.l->next==ld.l!=null10.在一个具备n个结点的有序单链表填入一个崭新结点并仍然维持有序的时间复杂度就是_________。
数据结构 第二章:线性表
第二章线性表:习题习题一、选择题1.L是线性表,已知Length(L)的值是5,经运算?Delete(L,2)后,length(L)的值是( c)。
A.5B.0C.4D.62.线性表中,只有一个直接前驱和一个直接后继的是( )。
A.首元素 B.尾元素C.中间的元素 D.所有的元素+3.带头结点的单链表为空的判定条件是( )。
A. head= =NULLB. head->next= =NULLC. head->next=headD. head!=NULL4.不带头结点的单链表head为空的判定条件是( )。
A. head=NULLB. head->next =NULLC.head->next=headD. head!=NULL5.非空的循环单链表head的尾结点P满足()。
A. p->next = =NULLB. p=NULLC. p->next==headD. p= =head6.线性表中各元素之间的关系是( c)关系。
A.层次B.网状C.有序 D.集合7.在循环链表的一个结点中有()个指针。
A.1B.2 C. 0 D. 38.在单链表的一个结点中有()个指针。
A.1B.2 C. 0 D. 39.在双链表的一个结点中有()个指针。
A.1B.2 C. 0 D. 310.在一个单链表中,若删除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;11.指针P指向循环链表L的首元素的条件是()。
A.P= =L B. P->next= =L C. L->next=P D. P-> next= =NU LL12. 在一个单链表中,若在p所指结点之后插入s所指结点,则执行()。
第2章_线性表习题参考答案
习题二参考答案一、选择题1. 链式存储结构的最大优点是( D )。
A.便于随机存取B.存储密度高C.无需预分配空间D.便于进行插入和删除操作2. 假设在顺序表{a 0,a 1,……,a n -1}中,每一个数据元素所占的存储单元的数目为4,且第0个数据元素的存储地址为100,则第7个数据元素的存储地址是( D )。
A. 106B. 107C.124D.1283. 在线性表中若经常要存取第i 个数据元素及其前趋,则宜采用( A )存储方式。
A.顺序表B. 带头结点的单链表C.不带头结点的单链表D. 循环单链表4. 在链表中若经常要删除表中最后一个结点或在最后一个结点之后插入一个新结点,则宜采用( C )存储方式。
A. 顺序表B. 用头指针标识的循环单链表C. 用尾指针标识的循环单链表D. 双向链表5. 在一个单链表中的p 和q 两个结点之间插入一个新结点,假设新结点为S,则修改链的java 语句序列是( D )。
A. s.setNext(p); q.setNext(s);B. p.setNext(s.getNext()); s.setNext(p);C. q.setNext(s.getNext()); s.setNext(p);D. p.setNext(s); s.setNext(q);6. 在一个含有n 个结点的有序单链表中插入一个新结点,使单链表仍然保持有序的算法的时间复杂度是( C )。
A. O(1)B. O(log 2n)C. O(n)D. O(n2)7. 要将一个顺序表{a 0,a 1,……,a n-1}中第i 个数据元素a i (0≤i ≤n-1)删除,需要移动( B )个数据元素。
A. iB. n-i-1C. n-iD. n-i+18. 在带头结点的双向循环链表中的p 结点之后插入一个新结点s ,其修改链的java 语句序列是( D )。
A. p.setNext(s); s.setPrior(p); p.getNext().setPrior(s);s.setNext(p.getPrior());B. p.setNext(s); p.getNext().setPrior(s); s.setPrior(p);s.setNext(p.getNext());C. s.setPrior(p); s.setNext(p.getNext()); p.setNext(s);p.getNext().setPrior(s);D. s.setNext(p.getNext()); s.setPrior(p); p.getNext().setPrior(s);p.setNext(s);9. 顺序表的存储密度是( B ),而单链表的存储密度是( A )。
《数据结构》第二章线性表习题及参考答案
《数据结构》第二章线性表习题一、单项选择题1. 线性表是________。
A.一个有限序列,可以为空B.一个有限序列,不可以为空C.一个无限序列,可以为空D.一个无限序列,不可以为空2. 在一个长度为n的顺序表中删除第i个元素(0<=i<=n)时,需向前移动个元素。
A.n-i B.n-i+l C.n-i-1 D.i3. 线性表采用链式存储时,其地址________。
A.必须是连续的B.一定是不连续的C.部分地址必须是连续的D.连续与否均可以4. 从一个具有n个结点的单链表中查找其值等于x的结点时,在查找成功的情况下,需平均比较________个元素结点。
A.n/2 B.n C.(n+1)/2 D.(n-1)/25. 在双向循环链表中,在p所指的结点之后插入s指针所指的结点,其操作是____。
A. p->next=s; s->prior=p;p->next->prior=s; s->next=p->next;B. s->prior=p; s->next=p->next;p->next=s; p->next->prior=s;C. p->next=s; p->next->prior=s;s->prior=p; s->next=p->next;D. s->prior=p; s->next=p->next;p->next->prior=s; p->next=s;6. 设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为________。
A.p->next=p->next->next; B.p=p->next; C.p=p->next->next; D.p->next=p;7. 在一个长度为n的顺序表中向第i个元素(0< i<n+l )之前插入一个新元素时,需向后移动______个元素。
《数据结构》习题集:第2章_线性表
第2章线性表一、选择题1.表长为N 的顺序表,当在任何位置上插入或删除一个元素的概率相等时,插入一个元素所需移动元素的平均次数为(E ),删除一个元素需要移动的元素个数为(A )。
A. (N-1)/2B. NC. N+1D. N-1E. N/2F. (N+1)/2G. (N-2)/22.线性表是具有N 个(C )的有限序列。
A、表元素B、字符C、数据元素D、数据项E、信息3.“线性表的逻辑顺序和物理顺序总是一致的。
”这个结论是(B )。
A、正确的B、错误的C、不一定,与具体结构有关。
4.线性表采用链式存储结构时,要求内存中可用存储单元的地址(D )。
A、必须是连续的B、部分地址必须是连续的C、一定是不连续的D、连续或不连续都可以。
5.带头结点的单链表为空的判定条件是(B )。
A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL6.不带头结点的单链表head 为空的判定条件是(A )。
A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL7.非空的循环单链表head 的尾结点P 满足( C )。
A、P->NEXT=NULLB、p=NULLC、p->next==headD、p==head8.在一个具有n 个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是(B )。
A、O(1)B、O(n)C、O(n2)D、O(nlog2n)9.在一个单链表中,若删除P 所指结点的后继结点,则执行( A )。
A、p->next=p->next->nextB、p=p->next;p->next=p->next->nextC、p->next=p->next;D、p=p->next->next;10.在一个单链表中,若在P所指结点之后插入S所指结点,则执行(B )。
第二章 线性表历年试题
第二章线性表一、单项选择题201101--1.在顺序表中查找第i个元素,时间效率最高的算法的时间复杂度为( )A.O(1)B.O(n)C.O(log2n) D.O(n)201101--10.设单链表中指针p指向结点A,若要删除A的直接后继,则所需修改指针的操作为( )A.p->next=p->next->nextB.p=p->nextC.p=p->next->nextD.p->next=p201010--12.在单链表中,存储每个结点有两个域,一个是数据域,另一个是指针域,指针域指向该结点的( )A.直接前趋 B.直接后继 C.开始结点 D.终端结点201010--13.在已知头指针的单链表中,要在其尾部插入一新结点,其算法所需的时间复杂度为( )A.O(1)B.O(log2n) C.O(n) D.O(n2)201010--14.在链队列中执行入队操作,( )A.需判别队是否空 B.需判别队是否满C.限制在链表头p进行D.限制在链表尾p进行201001--5.长度为n的链队列用单循环链表表示,若只设头指针,则出队操作的时间复杂度为( )A.O(1)B.O(1og2n) C.O(n) D.O(n2)201001--9.在表长为n的顺序表上做删除运算,其平均时间复杂度为( )A.O(1)B.O(n)C.O(nlog2n) D.O(n2)200910--1.在表长为n的顺序表上做插入运算,平均要移动的结点数为()A.n/4B.n/3C.n/2D.n200910--2.顺序表中有19个元素,第一个元素的地址为200,且每个元素占一个字节,则第14个元素的存储地址为()A.212B.213C.214D.215200910--6.在已知尾指针的单循环链表中,插入一个新结点使之成为首结点,其算法的时间复杂度为()A.O(1)B.O(log2n)C.O(n)D.O(n2)200910--10.在线性表的下列存储结构中进行插入、删除运算,花费时间最多的是()A.单链表B.双链表C.顺序表D.单循环链表200901--3.若线性表最常用的操作是存取第i个元素及其前趋的值,那么最节省操作时间的存储方式是()A.单链表B.双链表C.单循环链表D.顺序表4.设单链表中指针p指向结点A,要删除A之后的结点(若存在),则修改指针的操作为()A.p—>next=p—>next—>nextB.p=p—>nextC.p=p—>next—>nextD.p—>next=p200810--3.在单链表中,存储每个结点需要有两个域,一个是数据域,另一个是指针域,指针域指向该结点的()A.直接前趋B.直接后继C.开始结点D.终端结点200801--3.线性表采用链式存储结构时,要求内存中可用存储单元的地址( )A. 必须是连续的B. 必须是部分连续的C. 一定是不连续的D. 连续和不连续都可以200801--4.设h是指向非空带表头结点的循环链表的头指针,p是辅助指针。
第二章 线性表考研真题精选
第三部分考研真题精选一、选择题1.下述哪一条是顺序存储结构的优点?()A.存储密度大B.插入运算方便C.删除运算方便D.可方便地用于各种逻辑结构的存储表示2.下面关于线性表的叙述中,错误的是哪一个?()A.线性表采用顺序存储,必须占用一片连续的存储单元。
B.线性表采用顺序存储,便于进行插入和删除操作。
C.线性表采用链接存储,不必占用一片连续的存储单元。
D.线性表采用链接存储,便于插入和删除操作。
3.线性表是具有n个()的有限序列(n>0)。
A.表元素B.字符C.数据元素D.数据项4.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最节省时间。
A.顺序表B.双链表C.带头结点的双循环链表D.单循环链表5.某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。
A.单链表B.仅有头指针的单循环链表C.双链表D.仅有尾指针的单循环链表6.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。
A. 单链表B.单循环链表C. 带尾指针的单循环链表D.带头结点的双循环链表7.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。
则采用()存储方式最节省运算时间。
A.单链表B.双链表C.单循环链表D.带头结点的双循环链表8. 静态链表中指针表示的是().A.内存地址B.数组下标C.下一元素地址D.左、右孩子地址9. 链表不具有的特点是()A.插入、删除不需要移动元素B.可随机访问任一元素C.不必事先估计存储空间D.所需空间与线性长度成正比10. 下面的叙述不正确的是()A.线性表在链式存储时,查找第i个元素的时间同i的值成正比B. 线性表在链式存储时,查找第i个元素的时间同i的值无关C. 线性表在顺序存储时,查找第i个元素的时间同i 的值成正比D. 线性表在顺序存储时,查找第i个元素的时间同i的值无关11.(1) 静态链表既有顺序存储的优点,又有动态链表的优点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章测试试题
班级:学号:姓名:成绩:
一、选择题(每小题5分)
1.线性表是( A )。
A一个有限序列,可以为空;B一个有限序列,不能为空;
C一个无限序列,可以为空;D一个无序序列,不能为空。
2.用链表表示线性表的优点是(C)。
A便于随机存取
B花费的存储空间较顺序存储少
C便于插入和删除
D数据元素的物理顺序与逻辑顺序相同
3.某链表中最常用的操作是在最后一个元素之后插入一个元素和删除最后一个元素,则采用( D )存储方式最节省运算时间。
A单链表
B双链表
C单循环链表
D带头结点的双循环链表
4.带头结点的单链表head为空的判定条件是(B )。
A.head==NULL;
B.head->next==NULL;
C.head->next==head;
D.head!=NULL;
5.在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行(C )。
A.s->next=p->next;p->next=s;
B.p->next=s->next;s->next=p;
C.q->next=s;s->next=p;
D.p->next=s; s->next=q;
二、填空题(每小题5分)
1.给定有n个结点的向量,建立一个单链表的时间复杂度_______。
建立一个有序单链表的时间复杂度_______。
2.从一个具有n个结点的单链表中查找其值等于x结点时,在查找成功的情况下,需平均比较_____个结点。
3.在一个长度为n的线性表(采用顺序存储结构)中删除第i个元素(1≤i≤n)时,需向前移动____个元素。
4.当对一个线性表经常进行存取操作,而很少进行插入和删除操作时,则采用_____存储结构为宜。
相反,当经常进行的是插入和删除操作时,则采用_______存储结构为宜。
5.对顺序存储的线性表,设其长度为n,在任何位置上插入或删除操作都是等概率的。
插入一个元素时平均要移动表中的个元素。
三、算法设计题(每小题25分)
1.设有一个用向量表示的线性表L,要求写出一个将该表逆置的过程,允许在原表的存储空间外再增加一个附加的工作单元。
2.已知两个整数集合A和B,它们的元素分别依元素值递增有序存放在两个单链表HA 和HB中,编写一个函数求出这两个集合的并集C,并要求集合C的链表的结点仍依元素值递增有序存放。
(注意:并集不是归并)。