数据结构复习题 (2)

合集下载

数据结构试卷(二)及答案

数据结构试卷(二)及答案

数据结构试卷(二)一、选择题(24分)1.下面关于线性表的叙述错误的是()。

(A) 线性表采用顺序存储必须占用一片连续的存储空间(B) 线性表采用链式存储不必占用一片连续的存储空间(C) 线性表采用链式存储便于插入和删除操作的实现(D) 线性表采用顺序存储便于插入和删除操作的实现2.设哈夫曼树中的叶子结点总数为m,若用二叉链表作为存储结构,则该哈夫曼树中总共有()个空指针域。

(A) 2m-1 (B) 2m (C) 2m+1 (D) 4m3.设顺序循环队列Q[0:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()。

(A) R-F (B) F-R (C) (R-F+M)%M (D) (F-R+M)%M4.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为()。

(A) BADC (B) BCDA (C) CDAB (D) CBDA5.设某完全无向图中有n个顶点,则该完全无向图中有()条边。

(A) n(n-1)/2 (B) n(n-1) (C) n2(D) n2-16.设某棵二叉树中有2000个结点,则该二叉树的最小高度为()。

(A) 9 (B) 10 (C) 11 (D) 127.设某有向图中有n个顶点,则该有向图对应的邻接表中有()个表头结点。

(A) n-1 (B) n (C) n+1 (D) 2n-18.设一组初始记录关键字序列(5,2,6,3,8),以第一个记录关键字5为基准进行一趟快速排序的结果为()。

(A) 2,3,5,8,6 (B) 3,2,5,8,6(C) 3,2,5,6,8 (D) 2,3,6,5,8二、填空题(24分)1.为了能有效地应用HASH查找技术,必须解决的两个问题是____________________和__________________________。

数据结构考试题2

数据结构考试题2
q=q->next;
else
break;
}
while (p!=NULL && q!=NULL && p->data==q->data)
{//当两者值相等时同步后移
p=p->next;
q=q->next;
}
if (q==NULL)//当B中节点比较完毕返回1
return 1;
else//否则返回0
return 0;

1.设A=(a1,a2,…,an),B=(b1,b2,…,bm)是两个递增有序的线性表(其中n、m均大于1),且所有数据元素均不相同。假设A、B均采用带头节点的单链表存放,设计一个尽可能高效的算法判断B是否为A的一个子序列,并分析你设计的算法的时间复杂度和空间复杂度。(15分)
2.假设二叉树b采用二叉链存储结构存储,试设计一个算法,输出该二叉树中从根节点出发的第一条最长的路径长度,并输出此路径上各节点的值。并分析你设计的算法的时间复杂度和空间复杂度。(15分)
{//pathlen和maxpathlen的初值均为0
int i;
if (b==NULL)
{if (pathlen>maxpathlen)//通过比较求最长路径
{for (i=pathlen-1;i>=0;i--)
maxpath[i]=path[i];
maxpathlen=pathlen;
}
}
else
}
}
A. O(n)B. O( )
C. O(nlog2n)D. O(log2n)
3.在一个双链表中,删除p所指节点(非首、尾节点)的操作是。
A.p->prior->next=p->next;p->next->prior=p->prior;

数据结构考试题(二)

数据结构考试题(二)

数据结构试卷(一)一、选择题(30分)1.设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为()。

(A) O(n)(B) O(nlog2n)(C) O(1)(D) O(n2)2.设一棵二叉树的深度为k,则该二叉树中最多有()个结点。

(A) 2k-1(B) 2k(C) 2k-1(D) 2k-13.设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为()。

(A) n(B) e(C) 2n(D) 2e4.在二叉排序树中插入一个结点的时间复杂度为()。

(A) O(1)(B) O(n)(C) O(log2n)(D) O(n2)5.设某有向图的邻接表中有n个表头结点和m个表结点,则该图中有()条有向边。

(A) n(B) n-1(C) m(D) m-16.设一组初始记录关键字序列为(345,253,674,924,627),则用基数排序需要进行()趟的分配和回收才能使得初始关键字序列变成有序序列。

(A) 3(B) 4(C) 5(D) 87.设用链表作为栈的存储结构则退栈操作()。

(A) 必须判别栈是否为满(B) 必须判别栈是否为空(C) 判别栈元素的类型(D) 对栈不作任何判别8.下列四种排序中()的空间复杂度最大。

(A) 快速排序(B) 冒泡排序(C) 希尔排序(D) 堆9.设某二叉树中度数为0的结点数为N0,度数为1的结点数为N l,度数为2的结点数为N2,则下列等式成立的是()。

(A) N0=N1+1(B) N0=N l+N2(C) N0=N2+1(D) N0=2N1+l10.设有序顺序表中有n个数据元素,则利用二分查找法查找数据元素X的最多比较次数不超过()。

(A) log2n+1(B) log2n-1(C) log2n(D) log2(n+1)二、填空题(42分)1.1.设有n个无序的记录关键字,则直接插入排序的时间复杂度为________,快速排序的平均时间复杂度为_________。

数据结构试题2

数据结构试题2

计算机专业数据结构试题一、选择题(每小题1分,共10分)1、在一个长度为n的顺序表的表尾插入一个新元素的渐进时间复杂度为()A.O (n) B.O (1) C.O (n2 ) D.O (log2 n)2、设单链表中结点的结构为(data , link)。

已知指针q所指结点是指针p所指结事业的直接前驱,若在*q与*p之间插入结点*s,则应执行下列哪一个操作?()A.s ->link= p->link ; p->link=s B.q->link=s ;s->link=pC.p->link=s->link ;s->link=p D.p->link=s ;s->link=q3、若让元素1,2,3依次进栈,则出栈次序不可能出现()种情况。

A.3,2,1 B.2,1,3 C.3,1,2 D.1,3,24、一个递归的定义可以用递归过程求解,也可以用非递归过程求解,但单从运行时间来看,通常递归过程比非递归过程()A.较快B.较慢C.相同5、树中所有结点的度等于所有结点数加()A.0 B.1 C.-1 D.26、在一棵具有n个结点的二叉树中,所有结点的空子树个数等于()A.n B.n-1 C.n+1 D.2*n7、对长度为n的有序单链表,若搜索每个元素的概率相等,则顺序搜索到表中任一元素的平均搜索长度为()A.n/2 B.(n+1)/2 C.(n –1)/2 D.n/48、在无向图中定义顶点V i与V j之间的路径为从V i到达V j的一个()A.顶点序列B.边序列C.权值总和D.边的条数9、如果只想得到1024个元素组成的序列中的前5个最小元素,那么用()方法最快。

A.起泡排序B.快速排序C.堆排序D.直接选择排序10、设有一个含200个表项的散列表,用线性探查法解决冲突,按关键码查询时找到一个表项的平均探查次数不超过1.5,则散列表项应能够至少容纳()个表项。

数据结构试题及答案(2)

数据结构试题及答案(2)

数据结构试题一、单选题(每题 2 分,共20分)1.1. 对一个算法的评价,不包括如下( B )方面的内容。

A.健壮性和可读性B.并行性 C.正确性 D.时空复杂度2.2. 在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( A )。

A. p->next=HL->next; HL->next=p;B. p->next=HL; HL=p;C. p->next=HL; p=HL;D. HL=p; p->next=HL;3.3. 对线性表,在下列哪种情况下应当采用链表表示?( B )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4.4. 一个栈的输入序列为 1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35.5. AOV网是一种( D )。

A.有向图 B.无向图 C.无向无环图D.有向无环图6.6. 采用开放定址法处理散列表的冲突时,其平均查找长度( B )。

A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同 D.高于二分查找7.7. 若需要利用形参直接访问实参时,应将形参变量说明为( D )参数。

A.值 B.函数 C.指针 D.引用8.8. 在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的( A )。

A.行号B.列号 C.元素值 D.非零元素个数9.9. 快速排序在最坏情况下的时间复杂度为( D )。

A.O(log2n) B.O(nlog2n) C.O(n) D.O(n2)10.10. 从二叉搜索树中查找一个元素时,其时间复杂度大致为( C )。

A. O(n)B. O(1)C. O(log2n) D. O(n2)二、运算题(每题 6 分,共24分)1. 1. 数据结构是指数据及其相互之间的_对应关系(联系)。

数据结构复习_2

数据结构复习_2

7、抽象数据类型的概念 由用户定义,用以表示应用问题的数据模型,是将数据结构作为一个软件构建的实现, 由基本的数据类型组成, 并包括一组相关的服务(或称操作) 抽象数据类型的的特征是使用与实现相分离,信息隐蔽和数据封装, 8、类的特征 信息隐蔽和数据封装,使用与实现相分离。 9、自然数的抽象数据类型定义 ADT NaturalNumber is objects: 一个整数的有序子集合,它开始于 0, 结束于机器能表示的最大整数(MaxInt)。 Function: 对于所有的 x, y NaturalNumber; False, True Boolean, +、-、<、==、=等都是可用的服务。 Zero( ) : NaturalNumber 返回自然数 0
4、数据结构涉及的三个方面: 数据的运算,即对数据元素施加的操作。 数据的逻辑结构 数据的存储结构 是指数据应该如何在计算机中存放, 是数据逻辑结构的物理存储方式, 是属于具体实现 的视图,是面向计算机的。 四种基本的存储方法: 顺序存储表示:该方法把逻辑上相邻的元素存放到物理位置上相邻的存储单元中; 链接存储表示:该方法不要求逻辑上相邻的元素在物理位置上也相邻; 索引存储表示:该方法在存储元素信息的同时,还建立附加的索引表。索引表中每一项 称 为索引项,索引项的一般形式是:(关键码,地址); 散列存储表示:根据结点的关键码通过一个函数计算直接得到该结点的存储地址。 5、数据类型 数据类型是一组性质相同的值的集合, 以及定义于这个值集合上的一组操作的总称. 6、线性表数据类型的两种表示方式 基于数组的顺序表示和基于链表的链接表示
第五章树 一、树的定义和术语 1.自由树 一棵自由树 Tf 可定义为一个二元组 Tf = (V, E) 其中 V = {v1, ..., vn} 是由 n (n>0) 个元素组成的有限非空集合,称为顶点集合。 E = {(vi, vj) | vi, vj V, 1≤i, j≤n} 是 n-1 个序对的集合,称为边集合,E 中的元素 (vi, vj)称 为边或分支。

数据结构习题及答案 (2)

数据结构习题及答案 (2)

第二章线性表一、选择题1.一个线性表第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是( )(A)110 (B)108(C)100 (D)120参考答案:B2. 向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动()个元素。

(A)64(B)63 (C)63.5 (D)7参考答案:C3.线性表采用链式存储结构时,其地址()。

(A) 必须是连续的 (B) 部分地址必须是连续的(C) 一定是不连续的 (D) 连续与否均可以参考答案:D4. 在一个单链表中,若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;参考答案:B5.在一个单链表中,若删除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;参考答案:A6.下列有关线性表的叙述中,正确的是()(A)线性表中的元素之间隔是线性关系(B)线性表中至少有一个元素(C)线性表中任何一个元素有且仅有一个直接前趋(D)线性表中任何一个元素有且仅有一个直接后继参考答案:A7.线性表是具有n个()的有限序列(n≠0)(A)表元素(B)字符(C)数据元素(D)数据项参考答案:C二、判断题1.线性表的链接存储,表中元素的逻辑顺序与物理顺序一定相同。

()2.如果没有提供指针类型的语言,就无法构造链式结构。

()3.线性结构的特点是只有一个结点没有前驱,只有一个结点没有后继,其余的结点只有一个前驱和后继。

数据结构练习(二)答案

数据结构练习(二)答案

数据结构练习(二)答案一、填空题:1.若一棵树的括号表示为A(B(E,F),C(G(H,I,J,K),L),D(M(N))),则该树的度为(1)4,树的深度为(2)4 ,树中叶子结点的个数为(3)8。

2.一棵满二叉树中有m个叶子,n个结点,深度为h,请写出m、n、h之间关系的表达式(4)n=2h-1,m=n+1-2h-1 n=2m-1 。

3.一棵二叉树中如果有n个叶子结点,则这棵树上最少有(5)2n-1 个结点。

一棵深度为k的完全二叉树中最少有2k-1(6)个结点,最多有(7)2k-1个结点。

4.具有n个结点的二叉树,当它是一棵(8)完全二叉树时具有最小高度(9) log2n」+1,当它为一棵单支树时具有高度(10) n 。

5.对具有n个结点的完全二叉树按照层次从上到下,每一层从左到右的次序对所有结点进行编号,编号为i的结点的双亲结点的编号为_(11)__[i/2]__,左孩子的编号为___2i____,右孩子的编号为__2i+1______。

6.若具有n个结点的二叉树采用二叉链表存储结构,则该链表中有__2n_个指针域,其中有_n-1_个指针域用于链接孩子结点,__n+1_个指针域空闲存放着NULL 。

7.二叉树的遍历方式通常有__先序__、___中序__、__后序__和___层序___四种。

8.已知二叉树的前序遍历序列为ABDCEFG,中序遍历序列为DBCAFEG,其后序遍历序列为___DCBFGEA__。

9.已知某完全二叉树采用顺序存储结构,结点的存放次序为A,B,C,D,E,F,G,H,I,J,该完全二叉树的后序序列为___HIDJEBFGCA____。

10.若具有n个结点的非空二叉树有n0个叶结点,则该二叉树有__n0-1_个度为2的结点,____n-2n0+1____个度为1的结点。

11.任何非空树中有且仅有一个结点没有前驱结点,该结点就是树的__根____。

度为k的树中第i层最多有___k i-1_______个结点(i>=1),深度为h的k叉树最多有___k0+k1+....+k h-1____个结点。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.判断题(下列各题,正确的请在前面的括号内打√;错误的打×)第1章(√)(1)数据的逻辑结构与数据元素本身的内容和形式无关。

(√)(2)一个数据结构是由一个逻辑结构和这个逻辑结构上的一个基本运算集构成的整体。

(×)(3)数据元素是数据的最小单位。

(×)(4)数据项是数据的基本单位。

(×)(5)数据的逻辑结构和数据的存储结构是相同的。

(√)(6)数据的逻辑结构是各数据元素之间的逻辑关系,是用户按使用需要而建立的。

(√)(7)数据的物理结构是指数据在计算机内实际的存储形式。

(√)(8)从逻辑关系上讲,数据结构主要分为线性结构和非线性结构两类。

(√)(9)数据的存储结构是数据的逻辑结构的存储映像。

(√)(10)算法是对解题方法和步骤的描述。

第2章(×)(1)链表的物理存储结构具有同链表一样的顺序。

(×)(2)链表的每个结点都恰好包含一个指针域。

(√)(3)线性表中的元素可以是各种各样的,但同一线性表中的数据元素具有相同的特性,因此属于同一数据对象。

(×)(4)链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。

(×)(5)顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。

(√)(6)数组元素的存储位置是下标的线性函数。

(√)(7)在单链表中,元素的存储位置用指针联系,所以可以从头结点开始查找任何一个元素。

(×)(8)顺序存储线性表的插入和删除操作不需要付出很大的代价,因为平均每次移动仅一半的元素。

(×)(9)顺序存储方式的优点是存储密度大,插入、删除效率高。

(×)(10)在单链表中,要取得某个元素,只要知道该元素的指针即可,因此单链表是随机存取的存储结构。

第3章(√)(1)大多数排序算法都有比较关键字大小和改变指向记录的指针或移动记录本身两种基本操作。

(×)(2)快速排序在任何情况下都比其它排序方法速度快。

(√)(3)快速排序算法在每一趟排序中都能找到一个元素放在其最终位置上。

(×)(4)如果某种排序算法不稳定,则该排序方法就没有实际应用价值。

(√)(5)对n个记录的进行快速排序,所需要的平均时间是O(nlog2n)。

(×)(6)冒泡排序是不稳定的排序。

(√)(7)冒泡排序的时间复杂度是O(n2)。

(×)(8)堆排序所需的时间与待排序的记录个数无关。

(√)(9)对快速排序来说,初始序列为正序或反序都是最坏情况。

(√)(10)对于n个记录的集合进行归并排序,所需的平均时间为O (nlog2n)。

第4章(√)(1)栈是运算受限制的线性表。

(√)(2)在栈空的情况下,不能作出栈操作,否则产生下溢出。

(×)(3)栈一定是顺序存储的线性结构。

(×)(4)空栈就是所有元素都为0的栈。

(×)(5)一个栈的输入序列为:A,B,C,D,可以得到输出序列:C,A,B,D。

(√)(6)一个栈的输入序列为:A,B,C,D,通过入出栈操作可以输出序列:A,B,C,D。

(×)(7)在C或C++语言中设顺序栈的长度为MAXLEN,则top=MAXLEN时表示队满。

(√)(8)链栈与顺序栈相比,其特点之一是通常不会出现栈满的情况。

(√)(9)在栈中插入或删除一个元素应遵守的“后进先出”的原则。

(√)(10)进位制的换算算法是栈的应用。

(√)(11)队列是限制在两端进行操作的线性表。

(√)(12)判断顺序队列为空的标准是头指针和尾指针均指向同一个结点。

(×)(13)在链队列做出队操作时,会改变front指针的值。

(√)(14)在循环队列中,若尾指针rear大于头指针front,其元素个数为rear- front。

(√)(15)队列是一种“先进先出”的线性表。

(×)(16)在循环链队列中无上溢出现象。

(×)(17)栈和队列都是顺序存储的线性结构。

(√)(18)栈和队列都是属于线性结构。

(×)(19)顺序队和循环队的队满和队空的判断条件是一样的。

(√)(20)在队列中插入或删除一个元素应遵守的”先进先出”的原则。

第5章(×)(1)串的长度是指串中不同字符的个数。

(×)(2)串是n个字母的有限序列。

(√)(3)空串不等于空格串。

(×)(4)如果两个串含有相同的字符,则说明它们相等。

(×)(5)如果一个串中所有的字母均在另一个串中出现,则说明前者是后者的子串。

(√)(6)串的堆分配存储是一种动态存储结构。

(×)(7)“DT”是“DA TA”的子串。

(×)(8)空串与空格串是相同的。

(×)(9)串中任意个字符组成的子序列称为该串的子串。

(√)(10)子串的定位运算称为模式匹配。

(√)(11)n维的多维数组可以视为n-1维数组元素组成的线性结构。

(√)(12)稀疏矩阵中非零元素的个数远小于矩阵元素的总数。

(ㄨ)(13)若采用三元组压缩技术存储稀疏矩阵,只要把每个元素的行下标和列下标互换,就完成了对该矩阵的转置运算。

(ㄨ)(14)在稀疏矩阵的三元组表表示法中,每个三元组表示矩阵中数据元素的行号、列号和值。

(ㄨ)(15)上三角矩阵主对角线以上(不包括主对角线中的元素),均为常数C。

(√)(16)对称矩阵、三角矩阵、稀疏矩阵都可以进行压缩存储。

(ㄨ)(17)任何矩阵都可以进行压缩存储。

(√)(18)在稀疏矩阵的三元组表表示法中,每个三元组表示矩阵中非零元素的行号、列号和值。

(√)(19)数组元素可以由若干个数据项组成。

(√)(20)稀疏矩阵压缩存储就是为矩阵中非零元素分配一个存储空间。

第6章(√)(1)树结构中每个结点最多只有一个直接前驱。

(×)(2)完全二叉树一定是满二查树。

(√)(3)由树转换成二叉树,其根结点的右子树一定为空。

(√)(4)在前序遍历二叉树的序列中,任何结点的子树的所有结点都是直接跟在该结点之后。

(×)(5)用一维数组来存储二叉树时,总是以前序遍历存储结点。

(×)(6)已知二叉树的前序遍历和后序遍历并不能唯一确定这棵二叉树,因为不知道根结点是哪一个。

(√)(7)二叉树的前序遍历中,任意一个结点均处于其子女结点的前面。

(√)(8)由二叉树的前序遍历序列和中序遍历序列,可以推导出后序遍历的序列。

(√)(9)不使用递归,也可以实现二叉树的前序、中序和后序遍历。

(√)(10)在完全二叉树中,若一个结点没有左孩子,则它必然是叶子结点。

第7章(√)(1)图可以没有边,但不能没有顶点。

(×)(2)在无向图中,(V1,V2)与(V2,V1)是两条不同的边。

(×)(3)邻接表只能用于有向图的存储。

(√)(4)用邻接矩阵法存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间大小只与图中顶点个数有关,而与图的边数无关。

(√)(5)一个图的邻接矩阵表示是唯一的。

(×)(6)有向图不能进行广度优先遍历。

(√)(7)一个图的最小生成树是该图所有生成树中权最小的生成树。

(√)(8)存储无向图的邻接矩阵是对称的,因此只要存储邻接矩阵的上三角(或下三角)部分就可以了。

(×)(9)有向图的邻接矩阵一定是对称的。

(×)(10)一个图的深度优先遍历的序列是唯一的。

第8章(√)(1)二分查找法要求待查表的关键字值必须有序。

(√)(2)哈希法是一种将关键字转换为存储地址的存储方法。

(×)(3)在二叉排序树中,根结点的值都小于孩子结点的值。

(×)(4)对有序表而言采用二分查找总比采用顺序查找法速度快。

(√)(5)二叉排序树是一种特殊的线性表。

(√)(6)散列存储法的基本思想是由关键字的值决定数据的存储地址。

(√)(7)哈希法的查找效率主要取决于哈希表构造时选取的哈希函数和处理冲突的方法。

(√)(8)一般说来用哈希函数得到的地址,冲突不可能避免,只能尽可能减少。

(×)(9)选择好的哈希函数就可以避免冲突的发生。

(×)(10)在二叉排序树上删除一个结点时,不必移动其它结点,只要将该结点的父结点的相应的指针域置空即可。

二.填空题第1章1.数据结构是一门研究非数值计算程序设计中计算机的操作对象以及它们之间的关系和运算的学科。

2.数据的存储结构形式包括:顺序存储、链式存储、散列存储、索引存储。

3.数据结构按逻辑结构可分为两大类,它们分别是:线性结构和非线性结构。

4.一个算法的空间复杂度是指该算法所耗费的存储空间,它是该算法求解问题规模n 的函数。

5.数据结构有逻辑结构和存储结构两种结构。

6.数据的存储结构形式包括:顺序存储、链式存储、散列存储、索引存储。

7.一个算法的效率可分为时间效率和空间效率。

8.数据元素是数据的基本单位。

9.数据结构主要研究数据的逻辑结构、存储结构和算法。

11.数据的逻辑结构是独立于计算机的。

12.数据结构被定义为(D,R),其中D是数据的有限集合,R是D上的关系的有限集合。

13.树形结构结构中的元素之间存在一对多的关系。

14.若一个算法中的语句频度之和为T(n)=125n+3nlog2n,则算法的时间复杂度为O (nlog2n)。

15.数据结构主要研究数据的逻辑结构、存储结构和算法。

第2章1.顺序表中逻辑上相邻的元素在物理位置上必须相连。

2.在单链表中要在已知结点*P之前插入一个新结点,需找到*P的直接前趋结点的地址,其查找的时间复杂度为O (n) 。

3.线性表是n个结点的有限集合。

4.链表相对于顺序表的优点有插入、删除方便;缺点是存储密度小。

5.链表相对于顺序表的优点有插入、删除方便;缺点是存储密度小。

6.顺序表相对于链表的优点是:节省存储和随机存取。

7.对于一个具有n个结点的单链表,在已知p所指结点后插入一个新结点的时间复杂度是O (1)。

8.在链表中逻辑上相邻的元素的物理位置不必相连。

9.线性表中第一个结点没有直接前趋,称为开始结点。

10.在顺序表中访问任意一个结点的时间复杂度均为O (1) 。

11.在n个结点的单链表中要删除已知结点*P,其时间复杂度为O (1) 。

12.在单链表中需知道头指针才能遍历整个链表。

13.在一个单链表中,在指针p所指向的结点之后插入指针s所指向的结点时,应执行s->next=p->next和p->next=s 操作。

14.在一个长度为n的顺序表中,如果要在第i个元素前插入一个元素,要后移n- i +1 个元素。

15.在双向链表中,每个结点都有两个指针域,它们一个指向其前趋结点,另一个指向其后继结点。

相关文档
最新文档