数据结构复习题及答案(12级)
数据结构复习题
一.判断题(下列各题,正确的请在前面的括号内打√;错误的打×)第1章(√)(1)数据的逻辑结构与数据元素本身的内容和形式无关。
(√)(2)一个数据结构是由一个逻辑结构和这个逻辑结构上的一个基本运算集构成的整体。
(×)(3)数据元素是数据的最小单位。
(×)(4)数据项是数据的基本单位。
(×)(5)数据的逻辑结构和数据的存储结构是相同的。
(√)(6)数据的逻辑结构是各数据元素之间的逻辑关系,是用户按使用需要而建立的。
(√)(7)数据的物理结构是指数据在计算机内实际的存储形式。
(√)(8)从逻辑关系上讲,数据结构主要分为线性结构和非线性结构两类。
(√)(9)数据的存储结构是数据的逻辑结构的存储映像。
(√)(10)算法是对解题方法和步骤的描述。
第2章(×)(1)链表的物理存储结构具有同链表一样的顺序。
(×)(2)链表的每个结点都恰好包含一个指针域。
(√)(3)线性表中的元素可以是各种各样的,但同一线性表中的数据元素具有相同的特性,因此属于同一数据对象。
(×)(4)链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。
(×)(5)顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。
(√)(6)数组元素的存储位置是下标的线性函数。
(√)(7)在单链表中,元素的存储位置用指针联系,所以可以从头结点开始查找任何一个元素。
(×)(8)顺序存储线性表的插入和删除操作不需要付出很大的代价,因为平均每次移动仅一半的元素。
(×)(9)顺序存储方式的优点是存储密度大,插入、删除效率高。
(×)(10)在单链表中,要取得某个元素,只要知道该元素的指针即可,因此单链表是随机存取的存储结构。
第3章(√)(1)大多数排序算法都有比较关键字大小和改变指向记录的指针或移动记录本身两种基本操作。
1252《数据结构(本)》期末考试复习题
《数据结构(本)》期末综合练习题一、单选选择题1.栈和队列的共同特点是(C)。
A. 都是先进先出B. 都是操作受限的线性结构C. 都是先进后出D. 元素都可以随机进出2.数据的存储结构包括数据元素的表示和(C)。
A. 数据处理的方法B. 数据元素的类型C. 数据元素间的关系的表示D. 相关算法3.对一个栈顶指针为top的链栈进行入栈操作,通过指针变量p生成入栈结点,则执行p=(struct node *)malloc(sizeof(struct node);p->data=a;和(C)。
A. top->next=p; p=top;B. p->next=top; p=top;C. p->next=top; top=p;D. top=top->next; p=top;4.树状结构中数据元素的位置之间存在(B)的关系。
A. 每一个元素都有一个直接前驱和一个直接后继B. 一对多C. 一对一D. 多对多5.设头指针为head的非空的单向链表,指针p指向尾结点,则通过以下操作(D)可使其成为单向循环链表。
A. head = p;B. p=head;C. p->next = NULL ;D. p->next=head;6.设有一个长度为26的顺序表,要插入一个元素,并使它成为新表的第6个元素,需移动元素的个数为(D)。
A. 22B. 19C. 20D. 217.一种逻辑结构(C)。
A. 与存储该逻辑结构的计算机相关B. 是指某一种数据元素的性质C. 可以有不同的存储结构D. 只能有唯一的存储结构8.头指针为head的带头结点的单向循环链表,p所指向尾结点,要使该链表成为不带头结点的单向循环链表,可执行head=head->nex;和(A)。
A. p->next=head;B. p= head->nextC. head->next=pD. head->next=p->next9.把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为(D)。
数据结构复习习题和答案(DOC)
第一章绪论一、单项选择题1.数据结构是一门研究非数值计算的程序设计问题中计算机的①以及它们之间的②和操作等的学科。
① A.操作对象 B.计算方法 C·逻辑存储 D.数据映象② A.结构 B.关系 C.运算. D.算法2.数据结构被形式地定义为(D,R),其中D是①的有限集合,R是D上的②有限集合。
① A.算法 B.数据元素 C.数据操作 D.逻辑结构② A.操作 B.映象 C、存储 D.关系3.在数据结构中,从逻辑上可以把数据结构分成()。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构C.线性结构和非线性结构 D.内部结构和外部结构4·算法分析的目的是①,算法分析的两个主要方面是②。
① A. 找出数据结构的合理性 B.研究算法中的输入和输出的关系C. 分析算法的效率以求改进D. 分析算法的易懂性和文档性② A. 空间复杂性和时间复杂性 B.正确性和简明性C.可读性和文档性 D.数据复杂性和程序复杂性5.计算机算法指的是①,它必具备输入、输出和②等五个特性。
① A. 计算方法 B.排序方法 C. 解决问题的有限运算序列 D.调度方法② A. 可行性、可移植性和可扩充性 B. 可行性、确定性和有穷性C. 确定性、有穷性和稳定性 D.易读性、稳定性和安全性6. 线性表的逻辑顺序与存储顺序总是一致的,这种说法()。
A. 正确 B.不正确7. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址()。
A. 必须是连续的 B.部分地址必须是连续的C. 一定是不连续的D. 连续或不连续都可以8.数据结构通常是研究数据的()及它们之间的相互联系。
A.存储和逻辑结构 B.存储和抽象C.理想与抽象 D.理想与逻辑9.数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为()。
A.存储结构 B.逻辑结构 C.顺序存储结构 D.链式存储结构11.非线性结构是数据元素之间存在一种()。
数据结构各章复习题
计算机学院 甘士成
Copyright © 1992 - 2012 Gane Cheng . All Rights Reserved .
1 / 54
5. 下面说法错误的是(
)
(1)算法原地工作的含义是指不需要任何额外的辅助空间 (2)在相同的规模 n 下,复杂度 O(n)的算法在时间上总是优于复杂度 O(2 )的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低 A.(1) B.(1),(2) C.(1),(4) D.(3)
(p^.rlink)^.llink:=p^.llink; (p^.llink)^.rlink:=p; p^.rlink:=(p^.rlink)^.rlink p^.llink:=(p^.rlink)^.rlink;
三、简答题
1.线性表有两种存储结构:一是顺序表,二是链表。试问: (1)如果有 n 个线性表同时并存,并且在处理过程中各表的长度会动态变化,线性表的总数也会自动地改变。在 此情况下,应选用哪种存储结构? 为什么?
计算机学院 甘士成
(B)部分地址必须是连续的
Copyright © 1992 - 2012 Gane Cheng . All Rights Reserved . 3 / 54
(C)一定是不连续的 ( B )7. 线性表L在
(D)连续或不连续都可以 情况下适用于使用链式结构实现。 (B)需不断对L进行删除插入 (D)L中结点结构复杂
(
A )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 个结点从小到大排序
数据结构期末复习题
数据结构期末复习题习题⼀绪论习题答案1.1 1. AB2. BD3. C4. AB5. CA6. CB7. B8. D9. B 10. B1.2 1. 线性结构、树形结构、图形结构、⾮线性结构2. 没有、1、没有、13. 前驱、1、后续、任意多个4. 任意多个5. ⼀对⼀、⼀对多、多对多6. 有穷性、确定性、可⾏性、输⼊、输出7. O(m*n)8. O (n 1 2)9. O (n2)10. log3n1.1 单项选择题1. 数据结构是⼀门研究⾮数值计算的程序设计问题中计算机的①以及它们之间的②和运算等的学科。
①A.操作对象B.计算⽅法C.逻辑存储D.数据映象②A.结构B.关系C.运算D.算法2. 数据结构被形式地定义为(K,R),其中K是①的有限集合,R是K上的②有限集合。
①A.算法B.数据元素C.数据操作D.逻辑结构②A.操作B.映象C.存储D.关系3. 在数据结构中,从逻辑上可以把数据结构分成①。
A.动态结构和静态结构B.紧凑结构和⾮紧凑结构C.线性结构和⾮线性结构D.内部结构和外部结构4. 线性表的顺序存储结构是⼀种①的存储结构,线性表的链式存储结构是⼀种②的存储结构。
A.随机存取B.顺序存取C.索引存取D.散列存取5. 算法分析的⽬的是①,算法分析的两个主要⽅⾯是②。
① A. 找出数据结构的合理性 B. 研究算法中的输⼊和输出的关系C. 分析算法的效率以求改进D. 分析算法的易懂性和⽂档性② A. 空间复杂性和时间复杂性 B. 正确性和简明性C. 可读性和⽂档性D. 数据复杂性和程序复杂性6. 计算机算法指的是①,它必具备输⼊、输出和②等五个特性。
①A. 计算⽅法 B. 排序⽅法C. 解决问题的有限运算序列D. 调度⽅法②A. 可⾏性、可移植性和可扩充性 B. 可⾏性、确定性和有穷性C. 确定性、有穷性和稳定性D. 易读性、稳定性和安全性7. 线性表的逻辑顺序与存储顺序总是⼀致的,这种说法①。
数据结构复习题(附答案)
数据结构复习题(附答案)1. 快速排序在最坏情况下的时间复杂度为( D )。
A.O(log2n) B.O(nlog2n) C.O (n) D. O (n2)2.设⼀棵⼆叉树的深度为k,则该⼆叉树中最多有( D )个结点。
A. 2k-1B. 2kC.2k-1D. 2k-13.⼆叉树中第i(i≥1)层上的结点数最多有( C )个。
A. 2iB. 2iC. 2i-1D. 2i-1 4.设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为( A )。
A. p->next=p->next->nextB. p=p->nextC. p=p->next->nextD. p->next=p5.设栈S和队列Q的初始状态为空,元素E1、E2、E3、E4、E5和E6依次通过栈S,⼀个元素出栈后即进⼊队列Q,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S的容量⾄少应该是( C )。
A. 6B. 4C. 3D. 26.设有以下四种排序⽅法,则( B )的空间复杂度最⼤。
A. 冒泡排序B. 快速排C. 堆排序D. 希尔排序7.设结点A有3个兄弟结点且结点B为结点A的双亲结点,则结点B的度数数为( B )。
A. 3B. 4C. 5D. 18.根据⼆叉树的定义可知⼆叉树共有( B )种不同的形态。
A. 4B. 5C. 6D. 79.对⼀个算法的评价,不包括如下( A )⽅⾯的内容。
A.并⾏性 B.健壮性和可读性 C.正确性 D.时空复杂度10.在⼆叉排序树中插⼊⼀个结点的时间复杂度为( C )。
A.O(1) B.O(n) C.O(log2n) D.O(n2)11. 队列是⼀种( B )的线性表。
A.先进后出B.先进先出 C.只能插⼊D.只能删除12.采⽤开放定址法处理散列表的冲突时,其平均查找长度( C )。
A.低于链接法处理冲突 B. 与链接法处理冲突相同C.⾼于链接法处理冲突 D.⾼于⼆分查找13.设有序顺序表中有n个数据元素,则利⽤⼆分查找法查找数据元素X的最多⽐较次数不超过( A )。
数据结构期末复习题
练习题:一、填空题1、元素项是数据的最小单位,数据元素是讨论数据结构时涉及的最小数据单位。
2、设一棵完全二叉树具有100个结点,则此完全二叉树有49个度为2的结点。
3、在用于表示有向图的邻接矩阵中,对第i列的元素进行累加,可得到第i个顶点的出度。
4、已知一棵度为3的树有2个度为1的结点,3个度为2的结点,4个度为3的结点,则该树中有12个叶子的结点。
n=n0+n1+n2+…+nm (1)又有除根结点外,树中其他结点都有双亲结点,且是唯一的(由树中的分支表示),所以,有双亲的结点数为:n-1=0*n0+1*n1+2*n2+…+m*nm (2)联立(1)(2)方程组可得:叶子数为:n0=1+0*n1+1*n2+2*n3+...+(m-1)*nm5、有一个长度为20的有序表采用二分查找方法进行查找,共有4个元素的查找长度为3。
6、对于双向链表,在两个结点之间插入一个新结点需要修改的指针共4个。
删除一个结点需要修改的指针共2个。
7、已知广义表LS=(a,(b,c,d),e),它的深度是2,长度是3。
8、循环队列的引入是为了克服假溢出。
9、表达式a*(b+c)-d/f的后缀表达式是abc+*df/-。
10、数据结构中评价算法的两个重要指标是时间复杂度和空间复杂度。
11、设r指向单链表的最后一个结点,要在最后一个结点之后插入s所指的结点,需执行的三条语句是r->next=s; r=s; r->next=null;12、设有一个空栈,栈顶指针为1000H(十六进制),现有输入序列为1,2,3,4,5,经过PUSH,PUSH,POP,PUSH,POP,PUSH,PUSH之后,输出序列是23,而栈顶指针值是1012_H。
设栈为顺序栈,每个元素占4个字节。
13、模式串P=‘abaabcac’的next函数值序列为01122312。
14、任意连通图的连通分量只有一个,即是自身。
15、栈的特性是先进后出。
16、串的长度是包含的元素个数。
数据结构期末复习题(有答案)
一、单选题1. 从物理上可以把数据结构分为(B)两大类。
A. 动态结构、静态结构B. 顺序结构、链式结构C. 线性结构、非线性结构D. 初等结构、构造型结构2. 若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为(C )(1≤i≤n+1)。
A. O(0)B. O(1)C. O(n)D. O(n2)3. 链表不具有的特点是(B)。
A. 插入、删除不需要移动元素B. 可随机访问任一元素C. 不必事先估计存储空间D. 所需空间与线性长度成正比4. 下列排序算法中(C)排序在一趟结束后不一定能选出一个元素放在其最终位置上。
A. 选择B. 起泡C. 归并D. 堆5. 在下列排序算法中,哪一个算法的时间复杂度与初始排序无关(D )。
A. 插入排序B. 起泡排序C. 快速排序D. 选择排序6. 一个栈的输入序列为1,2,3,…,n,若输出序列的第一个元素是i,则第j个输出元素是(D)。
A. i-j-1B. i-jC. j-i+1D. 不确定7. 输入序列为ABC,可以变为BCA时,经过的栈操作为(D )。
A. push,pop,push,pop,push,popB. push,push,push,pop,pop,popC. push,push,pop,pop,push,popD. push,push,pop,push,pop,pop8. 有六个元素6 5 4 3 2 1 的顺序进栈,下列(C )不是合法的出栈序列。
A. 5 4 3 6 1 2B. 4 5 3 1 2 6C. 3 4 6 5 2 1D. 2 3 4 1 5 69. 串的长度是指(B )。
A. 串中所含不同字母的个数B. 串中所含字符的个数C. 串中所含不同字符的个数D. 串中所含非空格字符的个数10. 设二维数组A[1.. m,1.. n](即m行n列)按行存储在数组B[1.. m*n]中,则二维数组元素A[i,j]在一维数组B中的下标为( A)。
《数据结构》复习题题库
一、单项选择题(本大题共71小题,每小题2分,共142分)1、一个对象序列的排序码为{46,79,56,38,40,84},采用快速排序以位于最左位置的对象为基准而得到的第一次划分结果为()。
()A.{38,46,79,56,40,84}B.{38,79,56,46,40,84}C.{40,38,46,56,79,84}D.{38,46,56,79,40,84}标准答案:C2、广义表((a),a)的表头是()。
()A.aB.bC.(a)D.((a))标准答案:C3、数组A中,每个元素A的长度为3个字节,行下标i从1到8,列下标j从1到10,从首地址SA开始连续存放在存储器内,存放该数组至少需要的单元数是()。
()A.80B.100C.240D.270标准答案:C4、在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行()。
()A.HL=p;p->next=HL;B.p->next=HL;HL=p;C.p->next=HL;p=HL;D.p->next=HL->next;HL->next=p;标准答案:B5、一个具有n个顶点的无向完全图的边数为()。
()A.(n+1)/2B.n(n-1)/2C.n(n-1)D.n(n+1)标准答案:B6、如果待排序序列中两个数据元素具有相同的值,在排序后它们的位置发生颠倒,则称该排序是不稳定的。
下列选项中,()就是不稳定的排序方法。
()A.起泡排序B.归并排序C.直接插入法排序D.简单选择排序标准答案:D7、按照二叉树的定义,具有3个结点的二叉树有()种。
()A.3B.4C.5D.6标准答案:C8、设有1000个元素,用二分法查找时,最大比较次数是()。
()A.1B.7C.10D.25标准答案:C9、树适合用来表示()。
()A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据标准答案:C10、设有两个串p和q,求p在q中首次出现的位置的运算称作()。
数据结构复习题.doc
考试说明考试内容:一、绪论数据结构的基本概念和分类、数据结构的逻辑结构、存储结构、算法、数据结构的选择和评价二、线性表线性表的类型定义、线性表的顺序表示和实现、线性表的链式表示和实现三、栈和队列栈和队列的结构特性、两种存储结构上实现栈和队列的基本操作、栈和队列在程序设计中的应用六、树和二叉树树、二叉树的定义、性质和存储结构、二叉树的遍历和线索化、二叉树和森林转换、最优树和哈夫曼编码。
七、图图的定义和术语、图的存储结构、图的遍历、最小生成树、拓扑排序、最短路径问题。
九、内部排序插入排序、交换排序、选择排序、归并排序和基数排序的基本思想、算法特点、排序过程、时间复杂度分析及其应用。
试题类型及分值:选择题30分15题应用题40分5题算法设计题30分3题1.计算机算法指的是(1),它必须具备(2)这三个特性。
(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性答案:CB2. 下面说法错误的是()(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)答案 C3.从逻辑上可以把数据结构分为()两大类。
A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构答案 C4.以下与数据的存储结构无关的术语是()。
A.循环队列 B. 链表 C. 哈希表 D. 栈答案 D5.连续存储设计时,存储单元的地址()。
A.一定连续 B.一定不连续 C.不一定连续 D.部分连续,部分不连续答案 A6.下面关于线性表的叙述中,错误的是哪一个?()A.线性表采用顺序存储,必须占用一片连续的存储单元。
《数据结构》复习题
数据结构复习题一、单项选择题1.数据结构在计算机中的表示称为数据的()。
A)存储结构B)抽象结构C)顺序结构D)逻辑结构2.对于下面程序段的时间复杂度为()。
for(i=1;i<=n;i++)for(j=1;j<=i;j++)x=x+1;A)O(n) B)O(n2) C)O(n*i) D)O(n+i)9.数据类型为()。
A)数据项的集合B)值的集合及定义在其上的一组操作的总称C)数据元素的集合D)关键字的集合10.网状结构的特征是()。
A)结D)正确性、可读性、健壮性及确定性12.在下列序列中,不是线性表的是()。
A)('a','b','c') B)('AB','CD') C)('a',true,'c') D)(a,b,c,d)13.线性链表中各链结点之间的地址()。
A)必须连续B)部分地址必须连续C)不一定连续D)连续与否无所谓14.如某链表中最常用的操作是在最后一个结点后插入一个结点和删除最后一个结点,则()存储方式最节省运行时间。
A)单链表B)带头结点的单链表C)单循环链表D)带头结点的双循环链表15.在非空线性链表中由p所指的链结点后面插入一个由q所指的链结点的过程是依次执行动作()。
A)q->next=p;p->next=q; B)q->next=p->next;p->next=qC)q->next=p->next;p=q; D)p->next=q;q->next=p;16.线性表的顺序存储结构具有的特点是()。
A)可直接随机访问任一元素B)插入删除不需要移动元素C)不必26.从一个具有头结点的单链表中查找数据元素值为x的结点时,在查找成功的情况下,平均比较次数是()。
A)n B)n/2 C)(n-1)/2 D)(n+1)/227.对于长度为n的顺序线性表进行删除元素操作,如删除每个元素的概率相同,则删除一个元素移动元素的平均次数是()。
数据结构复习题及答案(12级)
一、选择题。
(每小题2分,共40分)(1) 计算机识别.存储和加工处理的对象被统称为____A____。
A.数据B.数据元素C.数据结构D.数据类型(2) 数据结构通常是研究数据的____ A _____及它们之间的联系。
A.存储和逻辑结构B.存储和抽象C.理想和抽象D.理想与逻辑(3) 不是数据的逻辑结构是____ A ______。
A.散列结构B.线性结构C.树结构D.图结构(4) 数据结构被形式地定义为<D,R>,其中D是____ B _____的有限集,R是____ C _____的有限集。
A.算法B.数据元素C.数据操作D.逻辑结构(5) 组成数据的基本单位是____ A ______。
A.数据项B.数据类型C.数据元素D.数据变量(6) 设数据结构A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构A是____ A ______。
A.线性结构B.树型结构C.图型结构D.集合(7) 数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为___ C ____。
A.存储结构B.逻辑结构C.顺序存储结构D.链式存储结构(8) 在数据结构的讨论中把数据结构从逻辑上分为___ A ____。
A.内部结构与外部结构B.静态结构与动态结构C.线性结构与非线性结构D.紧凑结构与非紧凑结构(9) 对一个算法的评价,不包括如下____ B _____方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度(10) 算法分析的两个方面是__ A ____。
A.空间复杂性和时间复杂性B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性(11) 线性表是具有n个___ C _____的有限序列(n≠0)。
A.表元素B.字符C.数据元素D.数据项(12) 线性表的存储结构是一种____ B ____的存储结构。
2012年贵州大学数据结构复习题及答案
2012年贵州大学数据结构复习题及答案1、下面程序的时间复杂度为___C_ 。
for(i=0;i< m;i++) for(j=0;j< n;j++) A[i][j]=i*j;(A). O(m2)(B). O(n2)(C). O(m*n)(D). O(m+n)2、在数据结构中,从逻辑上可以把数据结构分成__C__ 。
(A). 动态存储结构和静态存储结构(B). 紧凑结构和非紧凑结(C). 线形结构和非线性结构(D). 内部结构和外部结构3、下面程序的时间复杂度为__A__ 。
for(i=0;i< m;i++) for(j=0;j< t;j++) c[i][j]=0; for(i=0;i< m;i++) for(j=0;j< t;j++) for(k=0;k< n;k++) c[i][j]=c[i][j]+a[i][k]*b[k][j];(A). O(m*n*t)(B). O(m+n+t)(C). O(m+n*t)(D). O(m*t+n)4、下面程序的时间复杂度为__D__ 。
i=1;while(i<=n) i=i*5;(A). O(1)(B). O(n)(C). O(5*n)(D). O(log5n)5、算法指的是_D__ 。
(A). 计算机程序(B). 解决问题的步骤(C). 排序算法(D). 解决问题的有限运算序列6、某程序的时间复杂度为(3n+nlog2n+n2+8),其数量级表示为 C(A). O(n)(B). O(nlog2n)(C). O(n2)(D). O(log2n)7、数据结构是一门研究非数值计算的程序设计问题中的操作对象以及它们之间的__B____和运算的科学。
(A). 结构(B). 关系(C). 运算(D). 算法8、算法分析的目的是__C____。
(A). 找出算法的合理性(B). 研究算法的输入/输出关系(C). 分析算法的有效性以求改进(D). 分析算法的易懂性9、数据的基本单位是____B____。
数据结构期末复习题库(215道)
数据结构期末复习1、算法分析的目的是分析算法的效率以求改进,算法分析的两个主要方面是()——[单选题]A 空间复杂性和时间复杂性B 正确性和简明性C 可读性和文档性D 数据复杂性和程序复杂性正确答案:A2、两类存储结构为()——[单选题]A 线性结构和非线性结构B 逻辑结构和非逻辑结构C 顺序结构和链式结构D 逻辑结构和物理结构正确答案:C3、计算机算法指的是解决问题的有限运算序列,它必具备输入、输出和()等五个特性。
——[单选题]A 可行性、可移植性和可扩充性B 可行性、确定性和有穷性C 确定性、有穷性和稳定性D 易读性、稳定性和安全性正确答案:B4、在 C 语言中,有一种适用于不同数据类型构成的数据的结构称为()——[单选题]A 结构体B 数组C 变量D 常量正确答案:A5、在定义数组 int a[10]后,需要访问数组中第 3 个元素,正确的是()——[单选题]A a[0]B a[1]C a[2]D a[3]6、分析以下程序段,其时间复杂度为 T(n)=() for( i =0; i<n;i++)For(j=0;j<i;j++) A[i][j] = 0;——[单选题]A O(n)B O(n^2)C O(n^3)D O(1)正确答案:B7、数据元素之间存在一对多的关系,这种数据间的结构属于()——[单选题]A 集合B 线性结构C 树型结构D 图型结构正确答案:C8、有一个结构体及其变量定义如下: struct date{Int year; int month; intday;}birthday;此时要调用变量中的 year,正确的书写格式是()——[单选题]A yearB birthday.yearC date.yearD struct.year正确答案:B9、在数据结构中,从逻辑上可以把数据结构分成()——[单选题]A 动态结构和静态结构B 紧凑结构和非紧凑结构C 线性结构和非线性结构D 内部结构和外部结构正确答案:C10、分析下面算法(程序段),该算法的时间复杂度 T(n)=() for (i=0;i<n;i++)For (j=0;j<n; j++) A[i][j]=0;——[单选题]A O(n)B O(n^2)C O(n^3)D O(1)11、当定义一个结构体变量时,系统为它分配的内存空间是()——[单选题]A 结构体中一个成员所需的内存容量B 结构体中第一个成员所需的内存容量C 结构体中占内存容量最大者所需的容量D 结构体中各成员所需内存容量之和正确答案:D12、分析以下程序段,其时间复杂度为 T(n)=() x=0;For(i=1;i<n;i++);for(j=1;j<n;j++);For(k=1;k<n;k++); x++;——[单选题]A O(n)B O(n^2)C O(n^3)D O(1)正确答案:A13、有结构体定义及结构体类型数组如下: struct worklist{Int no;Char name[20]; char sex;}person[5];需要给结构体数组中第 2 个变量的 no 成员赋值为 5,正确的写法是()——[单选题]A no=5;B person.no=5;C person[2].no=5;D person[1].no=5;正确答案:D14、分析以下程序段,其时间复杂度为 T(n)=() i=1;While(i<=n) i=3*i;——[单选题]A O(n)B O(n^2)C O(n^3)D O(1)正确答案:D15、线性表是具有 n 个()的有限序列。
《数据结构》期末复习题及参考答案
《数据结构》复习资料一单选题 (共48题,总分值0分 )1. 设用链表作为栈的存储结构,则退栈操作(0 分)A. 必须判别栈是否为满B. 必须判别栈是否为空C. 判别栈元素的类型D. 对栈不作任何判别2. 下面关于m阶B树说法正确的是()。
①每个结点至少有两棵非空子树;②树中每个结点至多有m-1个关键字;③所有叶子在同一层上;④当插入一个数据项引起B树结点分裂后,树长高一层。
(0 分)A. ①②③B. ②③C. ②③④D. ③3. 下列关于文件的说法,错误的是()。
(0 分)A. 选择文件的组织方式时应考虑外存的性质和容量B. 不定长文件指的是总长度可变的文件C. 对文件的操作主要是维护和检索D. 文件的存储结构指的是文件在外存上的组织方式4. 设无向图的顶点个数为n,则该图最多有()条边。
(0 分)A. n-1B. n(n-1)/2C. n(n+1)/2D. n25. 设广义表L=((a,()),b,(c,d,e)),则Head(Tail(Tail(L)))的值为()。
(0 分)A. bB. cC. (c)D. (c,d,e)6. 设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
(0 分)A. 688B. 678C. 692D. 6967. 设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为(0 分)A. nB. eC. 2nD. 2e8. 广义表(a,(b,(),c))的深度为()。
(0 分)A. 1B. 2C. 3D. 49. 设有向图G中有五个顶点,各顶点的度分别为3、2、2、1、2,则G中弧数为()。
(0 分)A. 4条B. 5条C. 6条D. 无法确定10. 若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为(0 分)A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,311. 具有n个顶点的有向强连通图最少有()条弧。
数据结构复习题目及答案
《数据结构-C语言版》第一章绪论单项选择题1.在数据结构中,数据的基本单位是_____ ____。
A. 数据项B. 数据类型C. 数据元素D. 数据变量2.数据结构中数据元素之间的逻辑关系被称为__ ____。
A. 数据的存储结构B. 数据的基本操作C. 程序的算法D. 数据的逻辑结构3.在数据结构中,与所使用计算机无关的是数据的____ ___。
A. 存储结构B. 逻辑和物理结构C. 逻辑结构D. 物理结构4.在链式存储结构中,数据之间的关系是通过____ ____体现的。
A. 数据在存的相对位置B. 指示数据元素的指针C. 数据的存储地址D. 指针5.计算算法的时间复杂度是属于一种____ ___。
A. 事前统计的方法B. 事前分析估算的方法C. 事后统计的方法D. 事后分析估算的方法6.在对算法的时间复杂度进行估计的时候,下列最佳的时间复杂度是____ __。
A. n2B. nlognC. nD. logn7.设使用某算法对n个元素进行处理,所需的时间是T(n)=100nlog2n+200n+2000,则该算法的渐近时间复杂度为____ ___。
A. O(1)B. O(n)C. O(200n)D. O(nlog2n)CDCBBDD第二章线性表单项选择题1.链表不具有的特点是____ ____。
A. 可随机访问任一元素B. 插入和删除时不需要移动元素C. 不必事先估计存储空间D. 所需空间与线性表的长度正比2.设顺序表的每个元素占8个存储单元。
第1个单元的存储地址是100,则第6个元素占用的最后一个存储单元的地址为。
A. B. 140 C. 147 D. 1483.在线性链表存储结构下,插入操作算法。
A. 需要判断是否表满B. 需要判断是否表空C. 不需要判断表满D. 需要判断是否表空和表满4.在一个单链表中,若删除p所指结点的后继结点,则执行。
A. p->next = p->next->next;B. p->next = p->next;C. p = p->next->next;D. p = p->next; p->next = p->next->next;5.将长度为n的单链表接在长度为m的单链表之后的算法时间复杂度为。
《数据结构01》复习题_答案
一选择题(每小题2分,共20分)1.数据结构中,与所使用的计算机无关的是数据的 ___c___结构;A)存储 B)物理 C)逻辑 D)物理和存储2.算法分析的目的是:cA)找出数据结构的合理性 B)研究算法中的输入和输出的关系C)分析算法的效率以求改进 D)分析算法的易懂性和文档性3.计算机算法必须具备输入.输出和_b______等5个特性.A)可行性、可移植性和可扩充性 B)可行性、确定性和有穷性C)确定性、有穷性和稳定性D)易懂性、稳定性和安全性4.一个向量第一个元素的存储地址是100 ,每个元素的长度为2 ,则第5个元素的地址是 ___b____A)110 B)108 C)100 D)1205设有两个串p和q ,求q在p中首次出现的位置的运算称作:A) 连接 B)模式匹配 C)求子串 D) 求串长6 .向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变 ,平均要移动____b___ 个元素A)8 B)63.5 C)63 D) 77设矩阵 A 是一个对称矩阵,为了节省存储,将其下三角部分按行序存放在一维数组B[1,n(n-1)/2]中,对下三角部分中任一元素a(i≤j),在一维数组B中下i,j标K的值是:(矩阵是A[1][1]开始)BA)i(i-1)/2+j-1 B)i(i_1)/2+j C)i(i+1)/2+j-1 D) i(i+1)/2+j8. 二叉树是非线性数据结构,所以__c_____A) 它不能用顺序存储结构存储 B)它不能用链式存储结构存储C)顺序存储结构和链式存储结构都能存储 D)顺序存储结构和链式存储结构都不能使用9. 有8个结点的无向连通图最少有 __c_____ 条边(边数=节点-1)A) 5 B) 6 C) 7 D) 810. 所有排序方法中, 关键字比较的次数与记录的初始排列次数无关的是___d____A)希尔 B) 冒泡 C) 插入 D) 选择二.填空题(每小题2分,共20分)1. 数据的存储结构可用四种基本的存储方法表示,它们分别是顺序_______、链式_______、索引_______ 和散列_______。
数据结构复习题答案
一、选择题1.栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进行插入运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?( )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在()位置,脚注(10)表示用10进制表示。
A.688 B.678 C.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为( )A. O(1)B. O(n)C. O(1og2n)D. O(n2)9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.811.一个链队列中,f,r分别为队首、队尾指针,则插入s所指结点的操作为( )。
A)f->next=c;f=s; B) r->next=s;r=s;C)s->next=r;r=s; D) s->next=f;f=s;12.下列说法正确的是()。
《数据结构》复习题
《数据结构》复习题一、填空题1.数据结构中评价算法的两个重要指标是和。
2.数据元素之间有多种关系,其中常见的关系有、、、。
3.线性表的顺序存储是用实现的。
4.在长度为n的顺序表中插入一个元素,等概率的情况下的平均移动元素的次数是。
5.三个结点可构成种不同形态的二叉树。
6.对于栈只能在 (位置)插入和删除元素。
7.对矩阵压缩是为了。
8.深度为k的完全二叉树至少有个结点,至多有个结点。
9.对于一棵具有n个结点的二叉树,当进行链接存储时,其二叉链表中的指针域的总数为个,其中个用于链接孩子结点。
10.对二叉排序树进行遍历,可得到排好序的递增结点序列。
11.N个顶点的连通图的生成树含有条边。
12.己知有序表为(12,18,24,35,47,50,62,83,90,115,134)当用二分法查找90时,需次查找成功,47时成功,查100时,需次才能确定不成功。
13.算法的计算量的大小称为计算的____14.在线性表的顺序存储中,元素之间的逻辑关系是通过__ __决定的;在线性表的链接存储中,元素之间的逻辑关系是通过____决定的。
15.对于一个具有N个结点的单链表,在已知的结点*P后插入一个新结点的时间复杂度为____,在给定值为X的结点后插入一个新结点的时间复杂度为____.16.无论对于顺序存储还是链接存储的队列来说,进行插入或删除运算的时间复杂度均相同为____.17.对于一棵具有n个结点的树,该树中所有结点的度数之和为____18.在一个完全二叉树的顺序存储中,若一个结点的下标为i,则它的左子女结点的下标为____,右子女结点的下标为____.19.对于一棵具有n个结点的二叉树,对应二叉链表中指针总数为____个,其中____个用于指向子女结点,____个指针空闲着20.以折半搜索方法搜索一个线性表时,此线性表必须是____存储的____表21.在一个无向图中,所有顶点的度数之和等于所有边数的____倍。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
、选择题。
(每小题 2 分,共 40分)(1) 计算机识别 . 存储和加工处理的对象被统称为 _______ AA. 数据B. 数据元素C. 数据结构D. 数据类型⑷ 数据结构被形式地定义为 <D,R >,其中D 是 ____ B _____ 的有限集,R 是 _____ C _____ 的有限集。
A. 算法B. 数据元素C. 数据操作D.逻辑结构(5) 组成数据的基本单位是 ______ A _____ 。
A. 数据项B. 数据类型C. 数据元素D.数据变量⑹ 设数据结构 A=(D ,R),其中 D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构 A是 _____ A ____ 。
A. 线性结构B. 树型结构C. 图型结构D.集合(7) 数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为___ CA. 存储结构B.逻辑结构 C. 顺序存储结构D.链式存储结构 (8) 在数据结构的讨论中把数据结构从逻辑上分为 ___ AA. 内部结构与外部结构 C.线性结构与非线性结构(9) 对一个算法的评价,不包括如下A. 健壮性和可读性B.C. 正确性D.(10) 算法分析的两个方面是 __ AA. 空间复杂性和时间复杂性 C. 可读性和文档性D.(11) 线性表是具有 n 个___ C ___A. 表元素 C. 数据元素(12) 线性表的存储结构是一种 _____ B __ 的存储结构。
A. 随机存取B.顺序存取(2) 数据结构通常是研究数据的及它们之间的联系。
A. 存储和逻辑结构B.存储和抽象 C.理想和抽象D.理想与逻辑(3) 不是数据的逻辑结构是A. 散列结构B. 线性结构C. 树结构D.图结构B. 静态结构与动态结构 D. 紧凑结构与非紧凑结构 ___ B _____ 方面的内容。
并行性 时空复杂度 __。
B. 正确性和简明性数据复杂性和程序复杂性 的有限序列(n z 0) B.字符 D. 数据项C. 索引存取D.HASH 存取欢迎下载 3C.n-i-1A. 线性表采用顺序存储必须占用一片连续的存储空间B. 线性表采用链式存储不必占用一片连续的存储空间C. 线性表采用链式存储便于插入和删除操作的实现D. 线性表采用顺序存储便于插入和删除操作的实现A. s->next=p->next ; p->next=-s ;B. q->next=s ; s->next=p ;C. p->next=s->next; s->next=p ;D. p->next=s ; s->next=q ;A.堆栈是在两端操作、先进后出的线性表B. 堆栈是在一端操作、先进先出的线性表C. 队列是在一端操作、先进先出的线性表D. 队列是在两端操作、先进先出的线性表C 不会出现下溢的情况不会出现上溢的情况(13)在一个长度为 个元素。
的顺序表中,向第i 个元素(K i < n +1)之前插入一个新元素时,需要向后移动A.n-iB.n-i+1 (14)链表是一种采用 B ____ 存储结构存储的线性表; (15) A.顺序 C.星式B. D.F 面关于线性表的叙述错误的是链式 网状(19)栈和队列的共同点是 (20) (21)A.都是先进后出B.C.只允许在端点处插入和删除元素 栈与一般线性表的区别主要在 A 、元素个数B 、元素类型链栈与顺序栈相比,比较明显的优点是 A 、插入操作更加方便D.都是先进先出 没有共同点、逻辑结构 D 、插入、删除元素的位置删除操作更加方便 (22)以下数据结构中哪一个是非线性结构 A.队列B.栈C.线性表D.二叉树D.i(16) 设指针q 指向单链表中结点 A ,指针p 指向单链表中结点 A的后继结点B ,指针s 指向被插入的结点 X ,则在结点 A 和结点B 之间插入结点X 的操作序列为B(17) 设指针变量p 指向单链表结点 则删除结点A 的后继结点B 需要的操作为 AA. p->n ext=p->n ext- >nextB. p=p->next (18)C. p=p->n ext- >nextF 列说法哪个正确?D. p_>n ext=p4(23)若已知一个栈的入栈序列是 1, 2, 3,…,n ,其输出序列为pl , p2, p3,…,pn ,若p1=n ,则pi 为 _______________ C4个元素进S 栈的顺序是A,B,C,D ,经运算POP(S)后,栈顶元素是一个栈的输入序列是 a,b,c,d,e,则栈的不可能的输出序列是C. top->n ext=top;D. top=top->n ext;(30)设栈S 和队列Q 的初始状态为空,元素 E1、E2、E3、E4、E5和E6依次通过栈S ,—个元素出栈后即进入队 列Q ,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S 的容量至少应该是 ________ C ______ 。
A. 6B. 4C. 3D. 2(31)若用一个大小为6的数组来实现循环队列,且当前 rear 和front 的值分别为0和3。
当从队列中删除一个元素, 再加入两个元素后,rear 和front 的值分别为 __________________ B ______ 。
A. 1 和 5B. 2 和 4C. 4 和 2D. 5 和 1R 总是指向队尾元素的当前位置,则该循环队列中的元素个数为___ C ______(33)设指针变量front 表示链式队列的队头指针,指针变量 rear表示链式队列的队尾指针,指针变量s 指向将要入队列的结点X ,则入队列的操作序列为 _A. iB. B. n=iC. n-i+1D.不确定(24)当利用大小为 应执行N 的一维数组顺序存储一个栈时,假定用 top==N 表示栈空,则向这个栈插入一个元素时,首先A. top++ 语句修改top 指针。
B. top--C. top=0D. top(25) A. AB. BC. CD. D(26) A. edcbaB. decbaC. dceabD. abcde(27) 设输入序列是 1、2、 3、 、n ,经过栈的作用后输出序列的第一个元素是n ,则输出序列中第i 个输出元素A. n-iB. n-1-iC. n+1-iD.不能确定(28)字符 A 、B 、 字符串?C 、D 依次进入一个栈,按出栈的先后顺序组成不同的字符串,至多可以组成 B个不同的A. 15B. 14C. 16D. 21(29)设指针变量top 指向当前链式栈的栈顶,则删除栈顶元素的操作序列为A. top=top+1;B. top=top-1; (32)设顺序循环队列Q[0 : M-1]的头指针和尾指针分别为 F 和R ,头指针F 总是指向队头元素的前一位置,尾指针A. R-FB. F-RC. (R-F+M)%MD. (F-R+M)%M_ C _____ 。
B. s->next=rear ; rear=s ; D. s->next=front ;front=s ;B.串的长度必须大于零 D.空串就是空白串欢迎下载 5A. front->next=s ; front=s ; C. rear->next=s ; rear=s ;(34) 如下陈述中正确的是 _ A _________A.串是一种特殊的线性表 C.串中元素只能是字母(35) 下列关于串的叙述中,正确的是_A.串长度是指串中不同字符的个数B.串是n 个字母的有限序列C. 如果两个串含有相同的字符,则它们相等D. 只有当两个串的长度相等,并且各个对应位置的字符都相符时才相等(36)字符串的长度是指C 。
B.串中不同字母的个数 D.串中不同数字的个数A.串中不同字符的个数 C.串中所含字符的个数(37) 两个字符串相等的充要条件是C。
A.两个字符串的长度相等B.两个字符串中对应位置上的字符相等C.同时具备(A)和(B)两个条件D.以上答案都不对(38)串是一种特殊的线性表,其特殊性体现在 _______ B ________ 。
A.可以顺序存储B.数据元素是一个字符C.可以链接存储D.数据元素可以是多个字符(39)设有两个串p 和q ,求q 在p 中首次出现的位置的运算称作 __________ B _______ 。
A.连接B.模式匹配C.求子串D.求串长(40) 设串sl="ABCDEFG",s2="PQRST",函数con(x,y)返回x 和y 串的连接串,subs(s,i,j)返回串s 的从序号i 的字符开 始的j 个字符组成的子串,len(s)返回串s 的长度,贝U con(subs(s1,2,1en(s2)),subs(sl,len(s2),2))的结果串是 _DA. BCDEFB. BCDEFGC. BCPQRSTD. BCDEFEF(41)函数 substr( “DATASTRUCTURE ”,5, 9)的返回值为 ___ A _________ 。
A. " STRUCTUREB. “DATAC. “ ASTRUCTURD. “ DATASTRUCTURE(42) 设串 S=”l AM A TEACHER! ”,其长度是 ________ D ______ 。
A. 16B. 11C. 14D. 15(43) 假定在一棵二叉树中,双分支结点数为 15个,单分支结点数为 32个,则叶子结点数为 _______ B ___ 。
A. 15B. 16C. 17D. 47(44) 假定一棵二叉树的结点数为 18个,则它的最小高度 _____ B __ 。
A. 4 B. 5 C. 6 D. 18(45) 在一棵二叉树中第五层上的结点数最多为 _______ C ___ 。
A.8 B. 15 C. 16 D. 32(46) 在一棵具有五层的满二叉树中,结点总数为 _______ A ____ 。
A. 31 B. 32 C. 33 D.16(47) 已知8个数据元素为(34、76、45、18、26、54、92、65),按照依次插入结点的方法生成一棵二叉排序树后,最后两层上的结点总数为_____ B ___ 。
A. 1B. 2C.D. 4(48) 由分别带权为9、2、5、7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为____________ C ___ 。
A. 23B. 37C. 44D. 46(49) 在树中除根结点外,其余结点分成m (m > 0)个______ A ____ 的集合T1,T2,T3...Tm,每个集合又都是树,此时结点T称为Ti的父结点,Ti称为T的子结点(K i < m)。