数据结构考试试题库含答案解析_第1页
数据结构考试试题库含答案解析_第2页
数据结构考试试题库含答案解析_第3页
数据结构考试试题库含答案解析_第4页
数据结构考试试题库含答案解析_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据结构习题集含答案错误 ! 未定义书签。错误 ! 未定义书签。错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。错误 ! 未定义书签。错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。错误 ! 未定义书签。错 误 ! 未定义书签。 错

2、 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。 错 误 ! 未定义书签。目录目录 选择题 第一章绪论第二章 线性表 第三章 栈和队列第四章 串 第五章 数组和广义表第六章 树和二叉树第七章 图 第八章 查找 第九章 排序 简答题 第一章绪论第二章 线性表 第三章 栈和队列第四章 串 第五章 数组和广义表第六章 树和二叉树第七章 图 第八章 查找 第九章 排序 编程题 第一章绪论第二章线性表第三章 栈和队列第四章 串 第五章 数组和广义表第六章 树和二叉树第七章 图

3、 第八章 查找 第九章 排序 A、某班级的学生成绩表是数据元素, 日某班级的学生成绩表是数据对象, C某班级的学生成绩表是数据对象, D某班级的学生成绩表是数据元素,4. *数据结构是指(A ) 。A数据元素的组织形式C数据存储结构5. 数据在计算机存储器内表示时,A存储结构C链式存储结构6. 算法分析的目的是(C )A找出数据的合理性RC分析算法效率以求改进口7. 算法分析的主要方法(A ) 。A、空间复杂度和时间复杂度C可读性和文档性选择题第一章绪论1. 数据结构这门学科是针对什么问题而产生的?(A )A、针对非数值计算的程序设计问题B、针对数值计算的程序设计问题C数值计算与非数值计算的问

4、题都针对D、两者都不针对2. 数据结构这门学科的研究内容下面选项最准确的是(D )A、研究数据对象和数据之间的关系B、研究数据对象C研究数据对象和数据的操作 D、研究数据对象、数据之间的关系和操作3. 某班级的学生成绩表中查得张三同学的各科成绩记录,其中数据结构考了90分,那么下面关于数据对象、数据元素、数据项描述正确的是(C )90 分是数据项90 分是数据元素90 分是数据项90 分是数据元素B、数据类型D数据定义物理地址与逻辑地址不相同,称之为 ( C )B、逻辑结构D顺序存储结构研究算法中的输入和输出关系分析算法的易懂性和文档型性B、正确性和简明性H数据复杂性和程序复杂性8 .计算机内

5、部处理的基本单元是(B )A数据 R数据元素C、数据项D、数据库9 .数据在计算机内有链式和顺序两种存储方式,在存储空间使用的灵活性上, 链式存储比顺序存储要(B )。A、低R高G相同D不好说10 .算法的时间复杂度取决于(C )A、问题的规模已 待处理数据的初始状态C问题的规模和待处理数据的初始状态D不好说11 .数据结构既研究数据的逻辑结构,又研究物理结构,这种观点( B储A、正确B、错误C前半句对,后半句错H前半句错,后半句对12 .在数据结构中,从逻辑上可以把数据结构分成( C )A动态结构和静态结构B、C线性结构和非线性结构D13.线性表的顺序存储结构是一种()种(A )存储结构。A

6、随机存取B、C索引存取H紧凑结构和非紧凑结构内部结构和外部结构的存储结构,线性表的链式存储结构是顺序存取散列存取14. *下列程序的时间复杂度是(A )for (i=1; i=n; +i)for (j=1; j=n; +j)c ij=0;A、O(n2)R O(n)C、O(2n) D O(2n2)15. *下列程序的空间复杂度是(A )for (i=1; i=n; +i)for (j=1; j=m; +j)c ij=0;A、O(m*n) B O(m+n)C、O(m-n)Dk O(m/n)16. *求下列程序段的时间复杂度(B)for(i=1; i=n ;i + + )for(j=1;j=n ;j

7、 + + ) x=x+1;A、O(n2)B 、O(n) C 、。D 、O(0)第二章线性表1 .关于线性表的说法不正确的是? ( D)A、存在唯一的一个被称为“第一个”的数据元素(开始结点)日存在唯一的一个被称为“最后一个”的数据元素(终端结点)C除第一个之外,集合中的每个数据元素均只有一个前驱D除第一个之外,集合中的每个数据元素均只有一个后继2 .关于顺序表的说法不正确的是? ( D )A、逻辑关系上相邻的两个元素在物理存储位置上也相邻日可以随机存取表中任一元素,方便快捷C在线性表中插入某一元素时,往往需要移动大量元素D在线性表中删除某一元素时,无需移动大量元素3 .当线性表的元素总数基本稳

8、定,且很少进行插入和删除操作,但要求以最快 的速度存取线性表中的元素时,应采用什么存储结构? ( A )A顺序表 R单链表C、循环链表 D、双链表4 .在一个长度为n的顺序表中第i个元素(1=i =在单链表L中,指针p所指结点 有后继结点的条件是(B )A p=B、!=null10 . G =null D =在单链表p结点之后插入s结点的操作是(C )A、=s;=; R =;=、 =;=s;D、=p; =s;第三章栈和队列1 .栈、队列通常采用两种存储结构,它们是(B )A、散列方式和索引方式B、顺序存储结构和链式存储结构C链表存储结和数组D、线性和非线性存储结构2 . 一个栈入栈序列是a,b

9、,c,d,则栈输出序列不可能是(C )A d,c,b,a B c,d,b,aC、d,c,a,b D 、a,b,c,d3 .判断顺序栈(最多结点数为m为栈满的条件是(D )A top=0 B 、top!=m C 、top!=0 D 、top=m4 .栈存取数据原则(或栈特点)是(B )A、后进后出 B、后进先出C、先进先出 D 、随意进出5 .*经过以下栈运算后,x的值是(A )InitStack(s);Push(s,d);Push(s,e);Pop(s,x);Pop(s,x);GetTop(s,x);A、dB 、eC 、xD 、s6 .一个队列的进队序列为:a, b, c, d,则出队序列是:

10、(A)A a, b, c, dB、 d , c, b, aC a, d, c, bD、 c , b, d, a7. 循环队列为空队列的条件是:D)A、 =0B 、 Q. ( rear+1)%MaxSize=C、 =0D、 =8. 在存储结构上,如果用带头节点单链表实现队列(假定front 和 rear 分别为队首和队尾指针),则删除一个结点的操作为(A ) 。A、 =B、 rear=C、 rear=D、 front=9. 栈和队列共同点是(C )A、先进后出日先进先出C允许在端点处进行操作线性表D无共同点10. 插入和删除只能在一端进行的线性表是(B )A循环队列B 、栈C队列 D 、循环栈1

11、1. 插入和删除分别在两端端进行的线性表是(C )A循环队列B 、栈C队列 D 、循环栈12. 循环队列为满队列的条件是:( B )A、 =0B 、 Q. ( rear+1)%MaxSize=C、 =0D第四章 串关于串的叙述,错误的是:1.A.串是字符有限序列B.空串是由空格构成的串C.模式匹配是串的重要运算.串有用顺序、链式两种存储方式2.A.串所含不同字母数目.串所含字符数目C.串所含不同字符数目.串所含非空格字符数目3. *若串S=” database” , 其子串数目是(B ) 。A 16 B 37 C 8 D 364. 设用S1是用S子申,则求S1在S中定位运算称为(B )A.求子

12、串 B .串匹配 C .联接 D .求串长5. 设有串s1=” welcome to zdsoft colleage! ”和s2=” so” , 那么 s2 在 s1中的索引位置是(C )A 12 B 14 C 13 D 106. *若串S=“ software “ , 其子串的数目是(B ) 。A 8 B 37 C 36 D 9第五章 数组和广义表第六章 树和二叉树1. 假设在一棵二叉树中,双分支结点数为15,单分支结点数为30 个,则叶子结点数为(B )个。A. 15B. 16C. 17D. 472. 假定一棵三叉树的结点数为50,则它的最小高度为(C ) 。A. 3B. 4C. 5D.

13、63. 在一棵二叉树上第4 层的结点数最多为(D ) 。A. 2B. 4C. 6D. 84. 用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组中R1.n ,结点 Ri 若有左孩子,其左孩子的编号为结点(B ) 。A. R2i+1 B. R2iC. Ri/2D. R2i-15. 设n, m为一棵二叉树上的两个结点,在中序遍历序列中 n在m前的条件是 ( B )。A. n在m右方B. n 在m左方C.n是m的祖先D.n是m的子孙6. 下面叙述正确的是(D )。A.二叉树是特殊的树B.二叉树等价于度为 2的树C.完全二叉树必为满二叉树D.二叉树的左右子树有次序之分7 .现有一深度为5的二叉树,

14、请问其最多有(D )个结点。A. 32B.5D. 318 .现有一深度为4的二叉树,请问其最多有(A )个结点。A. 15B. 169 .在一棵二叉排序树上按(B )遍历得到的结点序列是一个有序序列。A.先序B.中序C.后序D.头序10 .在一棵二叉树中,度为0的结点数为n0,度为2的结点数为n2,则n0= ( C )A. n+1 B.n+2+111 .由三个结点构成的二叉树,共有(A. 4B. 512 . 一棵含有n个结点的树,(A )A.单支树 B.二叉树13 .不含任何结点的空树(C )。A .是一棵树; 树;C.是一棵树也是一棵二叉树;14 .二叉树是非线性数据结构,所以(A .它不能

15、用顺序存储结构存储; 储;C .顺序存储结构和链式存储结构都能存储D .顺序存储结构和链式存储结构都不能使用+1B )种不同的形态形态达到最大深度。C.三叉树 叉树B .是一棵二叉D.既不是树也不是二叉树C)。B.它不能用链式存储结构存15 .具有n(n0)个结点的完全二叉树的深度为(C )A .log2(n)B .10g2(n)C .10g2(n)+1D .log2(n)+116 .在一棵三元树中度为3的结点数为2个,度为2的结点数为1个,度为1的 结点数为2个,则度为0的结点数为(D )个。A. 4B. 517 .有关二叉树下列说法正确的是(B )A.二叉树的度为 2B, 一棵二叉树的度可

16、以小于2C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为218 .在完全二叉树中,若一个结点是叶结点,则它没(C )。A.左子结点B.右子结点C.左子结点和右子结点D.左子结点,右子结点和兄弟结点19 .在下列情况中,可称为二叉树的是(B )A.每个结点至多有两棵子树的树B.哈夫曼树C.每个结点至多有两棵子树的有序树D.每个结点只有一棵右子树第七章图1 .图的深度优先遍历类似于二叉树的(A )。A.先序遍历B .中序遍历C .后序遍历D .层次遍历2 .已知一个图如图所示,若从顶点a出发按深度优先遍历,则可能得到的一种 顶点序列为(C)A. abecdfB. acfebdC

17、. aebcfd D. aedfcb3 .若从无向图的任意一个顶点出发进行一次深度优先搜索可以访问图中所有的顶点,则该图一定是(B )图。A.非连通B .连通 C .强连通 D .有向4 .在一个图中,所有顶点的度数之和等于所有边数的( C )倍。A 1/2 B 15 .在一个有向图中,所有顶点的入度之和等于所有顶点出度之和的( B ) 倍。A1/2B1 C2 D36 . 一个有N个顶点的有向图最多有( B )条边。AN B N(N-1) C N(n-1)/2 D 2N7 .具有4个顶点的无向完全图有(A )条边。A 6B12C18 D 208 .具有6个顶点的无向图至少有(A )条边才能确保

18、是一个连通图。A 5 B 6 C 7 D 89 .对于一个具有N个顶点的无向图,若采用邻接矩阵表示,则该矩阵大小是 (D )A N B (N-1)2 C N-1 D N*N10 . 一个具有N个顶点的无向图中,要连通全部顶点至少要( C )条边B N+1 C N-1D N/211.*已知图的邻接矩阵如图所示,则从顶点 0出发按深度优先遍历的结果是(C )。A. 0243 1 56B.0136542C. 0 1 342 56D. 036 1 54212.已知图的邻接表下图所示,则从顶点0出发按广度优先遍历的结果是( 按深度优先遍历的结果是(D )。A. 0 132 B . 02 3 1 C .0

19、32 1 D ,012313 .已知图的邻接表下图所示,则从顶点0出发按广度优先遍历的结果是(), 按深度优先遍历的结果是()。A. 0 132 B0231 C , 03210 12 314 . 当在一个有序的顺序表上查找一个数据时,既可用折半查找,也可用顺序查找,但前者比后者的查找速度(C ) 。A.必定快BC.在大部分情况下要快D15. 折半查找有序表(4, 6, 10, 12,元素58,则它将依次与表中(AA 20, 70, 30, 50BC 20, 50D.不一定.取决于表递增还是递减20, 30, 50, 70, 88, 100) 。若查找表中)比较大小,查找结果是失败。 30, 8

20、8, 70, 50 30, 88, 50第八章 查找1. 顺序查找法适合于存储结构为(B )的线性表。A.散列存储B.顺序存储或链式存储C.压缩存储D.索引存储2. 在查找过程中,若同时还要增、删工作,这种查找称为(B ) 。A、 静态查找B 、 动态查找C 、 内查找D 、 外查找3. 索引顺序表的特点是顺序表中的数据(A ) 。A、有序B、无序C、 块间有序D 、 散列4. 采用顺序查找方法查找长度为n 的线性表时,每个元素的平均查找长度为( C)A、nB、n/2C、(n+1)/2 D、 (n-1)/25. *将 10个元素散列到1000000个单元的哈希表,则(C )产生冲突。A、 一定

21、会 B 、一定不会C 、仍可能会D 、以上都不对6. *散列表的地址区间为016,散列函数H(k尸k%17,采用线性探测法解决地址冲突,将关键字26、25、72、38、1、 18、59 依次存储到散列表中。元素59 存放在散列表中的地址为(A )A、8 B、9 C、10D、117. 设有序表的关键字序列为1,3,9,12,32,41,45,62,75,77,82,95,100, 当采用二分查找法查找值为82 的节点时,经(C )次比较后查找成功。A、 1B、 2C、 3D、48. 设有 100 个元素,用折半查找法进行查找时,最大、最小比较次数分别时( A )A、7,1 B 、 6,1C、 5

22、,1D、 8,1第九章 排序1. 对 n 个不同的记录按排序码值从小到大次序重新排列,用冒泡 ( 起泡 ) 排序方法,初始序列在( A ) 情况下,与排序码值总比较次数最少。A.按排序码值从小到大排列B .按排序码值从大到小排列C.随机排列(完全无序) D .基本按排序码值升序排列2. 对 n 个不同的记录按排序码值从小到大次序重新排列,用冒泡 ( 起泡 ) 排序方法,在 ( B)情况下,与排序码值总比较次数最多。A.按排序码值从小到大排列B .按排序码值从大到小排列C.随机排列(完全无序) D .基本按排序码值升序排列3. 对 n 个不同的记录按排序码值从小到大次序重新排列,用直接插入排序方

23、法,初始序列在( A)情况下,与排序码值总比较次数最少。A.按排序码值从小到大排列B .按排序码值从大到小排列C.随机排列(完全无序) D .基本按排序码值升序排列4. 对 n 个不同的记录按排序码值从小到大次序重新排列,用直接插入排序方法,初始序列在( B)情况下,与排序码值总比较次数最多。A.按排序码值从小到大排列B .按排序码值从大到小排列C.随机排列(完全无序) D .基本按排序码值升序排列5. 对 n 个不同的记录按排序码值从小到大次序重新排列,用快速排序方法在( C)情况下,与排序码值总比较次数最少。A.按排序码值从小到大排列B .按排序码值从大到小排列C.随机排列(完全无序) D

24、 .基本按排序码值升序排列6. 对 n 个不同的记录按排序码值从小到大次序重新排列,用快速排序方法,在( A)情况下与排序码值总比较次数最多。A.按排序码值从小到大排列B .按排序码值从大到小排列C.随机排列(完全无序) D .基本按排序码值升序排列7. 用冒泡排序方法对n 个记录按排序码值从小到大排序时,当初始序列是按排序码值从大到小排列时,与码值总比较次数是( D)。A n-1 B n C n+1 D n(n-1) 28. 下列排序方法中,与排序码值总比较次数与待排序记录的初始序列排列状态无关的是(D)。A.直接插入排序 B .冒泡排序 C .快速排序D .直接选择排序9. 将 6 个不同

25、的整数进行排序,至少需要比较(A)次。A5B 6C 15D 2110. 将 6 个不同的整数进行排序,至多需要比较(C)次。A5B 6C 15D 2111. *若需要时间复杂度在O(nlog2n)内,对整数数组进行排序,且要求排序方法是稳定的,则可选择的排序方法是(B)。A.快速排序B .归并排序C .堆排序 D .直接插入排序12. 当待排序的整数是有序序列时,采用(B) 方法比较好,其时间复杂度为O(n)。A.快速排序B .冒泡排序C .归并排序D .直接选择排序13. 当待排序的整数是有序序列时,采用(A)方法比较差,达到最坏情况下时间复杂度为O(n2) 。A.快速排序B .冒泡排序C

26、.归并排序D .直接选择排序14. 当待排序的整数是有序序列时,无论待排序序列排列是否有序,采用( D)方法的时间复杂度都是O(n2) 。A.快速排序B .冒泡排序C .归并排序D .直接选择排序15. *堆是一种(B) 排序。A.插入 B .选择 C .交换 D .归并16. *若一组记录的排序码值序列为40, 80, 50, 30, 60, 70,利用堆排序方法进行排序,初建的大顶堆是(D )。A80,40,50,30,60,70B80,70,60,50,40,30C80,70,50,40,30,60D80,60,70,30,40,5017. 若一组记录的排序码值序列为50 , 80, 3

27、0, 40, 70, 60利用快速排序方法,以第一个记录为基准,得到一趟快速排序的结果为(B )。A30, 40,50,60, 70, 80B40,30, 50, 80,70,60C 50, 30,40,70, 60, 80D40,50, 30, 70,60,8018. *下列几种排序方法中要求辅助空间最大的是(C )。A.堆排序B.直接选择排序C.归并排序D.快速排序19. 已知Am中每个数组元素距其最终位置不远,采用下列(A) 排序方法最节省时间。A.直接插入B .堆 C .快速 D .直接选择20. *设有10000个互不相等的无序整数,若仅要求找出其中前10个最大整数,最好采用( B)

28、排序方法。A.归并 B .堆 C .快速 D .直接选择21. *在下列排序方法中不需要对排序码值进行比较就能进行排序的是( A)。A:基数排序B .快速排序C .直接插入排序D .堆排序22. *给定排序码值序列为F, B, J, C, E, A, I , D, C, H,对其按字母的字典序列的次序进行排列,希尔(Shell) 排序的第一趟(d1=5) 结果应为(D ) 。AB,F,C,J,A,E,D,I ,C,HBC,B,D,A,E,F,I ,C,J,HCB,F,C,E,A,I ,D,C,H,JDA,B,D,C,E,F,I ,J,C,H23. 给定排序码值序列为F, B, J, C, E,

29、 A, I, D, C, H,对其按字母的字典 序列的次序进行排列,冒泡排序( 大数下沉 ) 的第一趟排序结果应为(C ) 。AB,F,C,J,A,E,D,I ,C,HBC,B,D,A,E,F,I ,C,J,HCB,F,C,E,A,I ,D,C,H,JD A, B, D, C, E, F, I , J, C, H24.给定排序码值序列为F,B,J,C,E,A,I,D,C,H,对其按字母的字典序列的次序进行排列,快速排序的第一趟排序结果为(B ) 。AB,F,C,J,A,E,D,I,C,HBC,B,D,A,E,F,I,C,J,HCB,F,C,E,A,I,D,C,H,JDA,B,D,C,E,F,I

30、,J,C,H25.*给定排序码值序列为F, B, J, C, E, A, I , D, C, H,对其按字母的字典序列的次序进行排列,二路归并排序的第一趟排序结果是(A )。AB,F,C,J,A,E,D,I,C,HBC,B,D,A,E,F,I,C,J,HCB,F,C,E,A,I,D,C,H,JDA,B,D,C,E,F,I,J,C,H1.请分别给出数据、数据对象、第一章绪论简答题数据元素、数据项的含义,并说明四者的关系。数据 (Data): 是对信息的一种符号表示。在计算机科学中是指所有能输入到计算机(一个得分点)数据元素(Data Element): 是数据的基本单位,在计算机程序中通常作为一

31、个整体进行考虑和处理,相当于表中的一条记录。(一个得分点)数据项:相当于记录的“域”, 是数据的不可分割的最小单位, 如学号(一个得分 点)数据对象:性质相同的数据元素的集合,是数据的一个子集. 例如 : 同一个班的所有学生记录集合。(一个得分点)关系:包含关系:数据泛指所有。数据对象是数据的一个子集,由数据元素组成,数据元素是由数据项组成。(一个得分点)评分标准,总共5 个得分点,每段话一个得分。2. 请给出数据的逻辑结构的含义,并举例说明数据的逻辑结构通常有哪些。数据的逻辑结构:指数据元素之间的逻辑关系。即用自然语言描述数据,它与数据的存储无关,是独立于计算机的,逻辑结构有四种。(一个得分

32、点)集合结构:仅同属一个集合(结构名字个得分点、举例得分点)线性结构:一对一(1:1) (结构名字个得分点、举例得分点)树 结 构 :一对多(1:n) (结构名字个得分点、举例得分点)图 结构 : 多对多(m:n) (结构名字个得分点、举例得分点)评分标准:每段话一个得分点,总共5 个得分点。什么是数据的物理结构?有哪些物理结构?数据的物理结构与逻辑结构有什么区别与联系?数据的物理结构:物理结构亦称存储结构,是数据的逻辑结构在计算机存储器内的表示(或映像)。它依赖于计算机。(一个得分点)存储结构可分为4 大类:顺序、链式、索引、散列。(共 2 个得分点,一个得分点)区别: 数据的逻辑结构属于用户视图,是面向问题的,数据的存储结构属于具体实现的视图,是面向计算机的。(一个得分点)联系: 一种数据的逻辑结构可以用多种存储结构来存储,而采用不同的存储结构其处理的效率往往不同。(一个得分点)评分标准:共5 个得分点,按照每段话各自标注的得分点进行评分。3. 求两个正整数m, n中的最大数MAX勺算法( 1 )若 m n 则 max=m( 2)若m E F、G H进行编码。(写出这8个字 符的霍夫曼编码)(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论