数据结构试卷(20050108)

合集下载

2005年专升本考试真题 数据结构

2005年专升本考试真题  数据结构

2005年吉林省普通高校专升本教育试点考试计算机科学与技术专业综合试卷(数据结构部分共90分)一、填空题(每小题2分,共26分)1. 栈的主要特点是_ _ ;队列的主要特点是____ 。

2. 在一长度为n的向量中的第i个元素(1≤i≤n)之前插入一个元素时,需向后移动__ 个元素。

3. 对于一个具有n个结点的单链表,在已知P所指结点都插入一个新结点的时间复杂度为__ _ ;在给定值为x的结点后插入一个新结点的时间复杂度为__ ___。

4. 设n行n列的下三角矩阵A已压缩到一维数组s[0 … n*(n+1)/2]中,若按行序为主存储,则A[i][j]对应的s中的存储位置为___ 。

5. 将f=1+1/2+1/3+ … +1/n转化成递归函数,其递归出口是__ __,递归体是____ 。

6. 设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为___ 。

7. 具有n个叶子结点的哈夫曼树中,其结点总数为___ 。

8. 对一个满二叉树,m个树叶,n个结点,深度为h,则n = ___ 。

9. 判定一个有向图是否存在回路,除了可以利用拓扑排序方法外,还可以利用__ __ 算法。

10. 在各种查找方法中,平均查找长度与结点个数n无关的查找方法是____ 。

11. 快速排序在最坏情况下的时间复杂度为__ 。

12. 一组记录的排序码为(46,79,56,38,40,84),则利用堆排序方法建立的初始堆为__ 。

13. 直接存取文件是用__ __ 方法组织的。

二、单项选择题(每小题2分,共20分)1. 线性表的顺序存储结构是一种()的存储结构;线性表的链式存储结构是一种()的存储结构。

A. 随机存取,顺序存取B. 顺序存取,随机存取C. 索引存取,散列存取D. 散列存取,随机存取2. 表达式a*(b+c)-d的后缀表达式为()。

A. abcd+-*B. abc+*d-C. abc*+d-D. -+*abcd3. 在一个单链中,若P所指结点不是最后的结点,在P之后插入S所指结点,则执行()。

(完整word版)数据结构试题集(包含答案完整版)

(完整word版)数据结构试题集(包含答案完整版)

第一章概论一、选择题1、研究数据结构就是研究(D )。

A. 数据的逻辑结构B。

数据的存储结构C. 数据的逻辑结构和存储结构D。

数据的逻辑结构、存储结构及其基本操作2、算法分析的两个主要方面是( A )。

A。

空间复杂度和时间复杂度 B. 正确性和简单性C。

可读性和文档性D。

数据复杂性和程序复杂性3、具有线性结构的数据结构是( D )。

A。

图B。

树C。

广义表D。

栈4、计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、( B )等5个特性。

A. 可执行性、可移植性和可扩充性B。

可执行性、有穷性和确定性C。

确定性、有穷性和稳定性 D. 易读性、稳定性和确定性5、下面程序段的时间复杂度是( 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)6、算法是(D )。

A。

计算机程序 B. 解决问题的计算方法C。

排序算法 D. 解决问题的有限运算序列7、某算法的语句执行频度为(3n+nlog2n+n2+8),其时间复杂度表示( C )。

A。

O(n) B. O(nlog2n) C。

O(n2) D. O (log2n)8、下面程序段的时间复杂度为( C ).i=1;while(i<=n)i=i*3;A. O(n)B。

O(3n) C。

O(log3n) D. O(n3)9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的()和运算等的学科。

A. 结构B。

关系C。

运算D。

算法10、下面程序段的时间复杂度是(A )。

i=s=0;while(s<n){i++;s+=i;}A. O(n) B。

O(n2)C。

O(log2n)D。

O(n3)11、抽象数据类型的三个组成部分分别为(A)。

A. 数据对象、数据关系和基本操作B. 数据元素、逻辑结构和存储结构C. 数据项、数据元素和数据类型D. 数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是()。

数据结构试卷试题及答案

数据结构试卷试题及答案

数据结构试卷试题及答案一、选择题(每题5分,共40分)1. 数据结构是研究数据元素的()A. 存储结构B. 处理方法C. 逻辑结构D. 所有以上内容答案:D2. 在数据结构中,通常采用()方式来表示数据元素之间的逻辑关系。

A. 顺序存储结构B. 链式存储结构C. 索引存储结构D. 散列存储结构答案:B3. 下面哪一个不是栈的基本操作?()A. 入栈B. 出栈C. 判断栈空D. 获取栈顶元素答案:D4. 下面哪一个不是队列的基本操作?()A. 入队B. 出队C. 判断队列空D. 获取队头元素答案:D5. 下面哪一个不是线性表的特点?()A. 有且只有一个根节点B. 每个节点最多有一个前驱和一个后继C. 数据元素类型相同D. 数据元素类型可以不同答案:D6. 在下列哪种情况中,使用链式存储结构比顺序存储结构更合适?()A. 数据元素经常插入和删除B. 数据元素大小不固定C. 数据元素个数不确定D. 所有以上情况答案:D7. 下面哪一个不是树的遍历方式?()A. 前序遍历B. 中序遍历C. 后序遍历D. 翻转遍历答案:D8. 在下列哪种情况中,使用散列存储结构比其他存储结构更合适?()A. 数据元素个数较少B. 数据元素查找频繁C. 数据元素插入和删除频繁D. 数据元素大小不固定答案:B二、填空题(每题5分,共30分)9. 栈是一种特殊的线性表,它的插入和删除操作都限定在表的一端进行,这一端称为______。

答案:栈顶10. 队列是一种特殊的线性表,它的插入操作在表的一端进行,这一端称为______,而删除操作在另一端进行,这一端称为______。

答案:队尾、队头11. 二叉树中的节点包括______和______。

答案:根节点、子节点12. 在图的存储结构中,邻接矩阵表示法用______个一维数组来表示图中各个顶点之间的关系。

答案:两个13. 散列存储结构中,关键码到存储地址的映射方法称为______。

(完整版)数据结构考试试题(带答案)

(完整版)数据结构考试试题(带答案)

XX科技大学成都学院二零零八至二零零九学年第一学期数据结构课堂测试(60分钟)闭卷考试时间:一•填空题(每空2分,共40分);1. 数据结构算法中,通常用时间复杂度和__空间复杂度两种方法衡量其效率。

2. 下面程序段的时间复杂度为_0(n1 2)____ 。

(n>1)for(i = 1; i <= n; i++)for(j = 1; j <= i; j++)x = x + 1;3. 静态链表中指针表示的是________ 一结点的地址 _______ 。

4. 线型表、栈和队列都是线型结构,可以在线型表的____ 任意—位置插入和删除元素;对于栈只能在 ____ 栈顶____ 插入和删除元素;对于队列只能在 ___ 队尾―插入元素和______ 队头_____ 除元素。

5. 在具有n个单元的循环队列中,队满时共有 _______ n-1 ___ 个元素。

6. 在一个长度为n的顺序表中第i个元素(1<=i<=n)之前插入一个元素时,需向后移动_n-i+1_个元素。

7. 在n个结点的单链表中要删除已知结点*p,需找到它的_______ 驱__________ 。

8. 带有一个头结点的单链表head为空的条件是___________ head-> next==NULL 。

9. 在栈顶指针为hs的链栈中,判断栈空的条件是 __________ hs= =NULL一。

10. 在hq的链队列中,判定只有一个结点的条件是_hq.front->next==hq.rear _________ 。

11. 非空的循环单链表head的尾结点(由p指向),满足条件______ p->next==head。

12. 两个串相等的充分必要条件是_______ 串长相等且对应字符相等_________ 。

13. 空串是________ 度为0的串 ________ 其长度等于—0 。

数据结构的试题及答案

数据结构的试题及答案

数据结构的试题及答案一、选择题1. 在数据结构中,线性表的顺序存储方式被称为:A. 栈B. 队列C. 链表D. 数组答案:D2. 以下哪种数据结构是动态数据结构?A. 数组B. 链表C. 栈D. 队列答案:B3. 树的度是树内所有节点的度的最大值,树的深度是树的最长路径上的节点数。

以下哪个选项正确描述了树的度和深度?A. 度是节点的最大值,深度是路径上节点数B. 度是路径上节点数,深度是节点的最大值C. 度是节点的最大值,深度是节点的最大值D. 度是路径上节点数,深度是路径上节点数答案:A二、简答题1. 请简述链表和数组的区别。

答案:链表和数组是两种不同的数据存储方式。

数组是连续的内存空间,可以通过索引快速访问元素,但插入和删除操作可能需要移动大量元素。

链表由一系列节点组成,每个节点包含数据部分和指向下一个节点的指针,链表的插入和删除操作不需要移动其他元素,但访问特定元素需要从头开始遍历。

2. 什么是二叉搜索树?它有哪些特点?答案:二叉搜索树(BST)是一种特殊的二叉树,其中每个节点的值都大于或等于其左子树中的任何节点的值,并且小于或等于其右子树中的任何节点的值。

BST的主要特点是它支持快速的查找、插入和删除操作,时间复杂度为O(log n)。

三、计算题1. 给定一个链表,编写一个算法来删除链表中的重复元素。

答案:以下是删除链表中重复元素的算法步骤:- 遍历链表,使用一个哈希表来记录已经遇到的元素。

- 当遍历到一个新元素时,检查它是否已经在哈希表中。

- 如果已经存在,删除当前节点,并继续遍历。

- 如果不存在,将元素添加到哈希表中,并继续遍历。

- 完成遍历后,链表中的重复元素将被删除。

2. 假设有一个二叉搜索树,编写一个算法来找到树中第k小的元素。

答案:以下是找到二叉搜索树中第k小元素的算法步骤:- 从根节点开始,使用中序遍历(左-根-右)。

- 遍历过程中,记录访问的节点数量。

- 当访问到第k个节点时,该节点即为所求的第k小的元素。

2005级数据结构试题A卷

2005级数据结构试题A卷

2005级数据结构试题A卷注:回答问题,请在答题卡上回答,不要回答在试题上。

一、是非判断(回答’Y’或者’N’即可,不许多答、不许用其他符号替代24分)(1)线性表的逻辑顺序与物理顺序总是一致的。

(2)线性表的顺序存储表示优于链式存储表示。

(3)线性表若采用链式存储表示时所有结点之间的存储单元地址可连续可不连续。

(4)二维数组是其数组元素为线性表的线性表。

(5)每种数据结构都应具备三种基本运算:插入、删除和搜索。

(6 ) 二叉树必须有父结点、但不一定有左孩子结点或是右孩子结点。

(7)用n个结点构造Huffman树,这个树有2n个结点。

(8)有n个顶点的有向图,各个顶点完全连通则有n-1条边。

(9)拓扑排序的有向图,要求图入度为0的顶点只能有一个。

(10)在二叉排序树上查找,其效率总是高于顺序表上查找。

(11)归并排序是稳定排序且时间复杂度为O(nLogn)。

(12)Floyd最短路计算需要深度遍历图、且仅仅适合于有向图。

二,选择判断(每个题目仅有一个答案30分)1.算法指的是A.计算机程序 B.解决问题的计算方法C.排序算法 D.解决问题的有限运算序列2.关于以下图问题的计算,使用深度编历算法的是:A.Dijkstra最短路B.拓扑排序C.关键路径计算D.Prim最小生成树3.将长度为n的单链表链接在长度为m的单链表之后的算法的时间复杂度为A.O(1) B.O(n) C.O(m) D.O(m+n)4.哈希表查找中,填充因子和查找效率的关系是:A.填充因子越大、查找效率越好B.填充因子越小、查找效率越好C.填充因子要根据查找对象计算D.填充因子和查找效率没直接关系5.图的拓扑排序中,主要使用了哪种数据结构存储来暂存顶点?A.顺序表 B.栈C.队列 D.数组6.如下陈述中正确的是A.串是一种特殊的线性表 B.串的长度必须大于零C.串中元素只能是字母 D.空串就是空白串7.图的顶点个数是n,深度遍历该图,时间复杂度是:A.O(1) B.O(n) C.O(n2) D.O(n3)8、有数组char A[3][3][3],按行存放于一个连续的存储空间中,如A[0][0][0] 存储地址是200(10进制),则它的数组元素A[1][1][2]在内存中的位置是:A.212 B.211 C.214 D.2159.对一个单向链表,下列程序段中,p指针类型为:struct Node {int X;struct Node *next;}如p开始指向链表头结点,最后p一定指向尾结点的是:A.while(p!=NULL) p=p->next;B.while(p!=NULL) p++;C.while(p->next!=NULL) p++;D.while(p++ ->next!=NULL);10.索引文件通常由索引表和主文件两部分构成,其中A.索引表和主文件均必须是有序文件B.索引表和主文件均可以是无序文件C.索引表必须是有序文件D.主文件必须是有序文件11.在含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为A.e B.2*e C.n2-e D.n2-2*e12.假设一个有n个顶点和e条弧的有向图用邻接矩阵表示,则删除与某个顶点Vi相关的所有弧的时间复杂度是A.O(n) B.O(e) C.O(n+e) D.O(n*e)13.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采用的排序方法是A.选择排序 B.希尔排序 C.归并排序 D.快速排序14.对n个不同值元素的集合,找到最大/最小元的算法,应该进行多少种比较?A.n B.n-1 C.n2 D.n2-115.下列排序方法中,属于不稳定的排序方法是A.直接插入排序法B.快速排序法C.冒泡排序法D.希尔排序法三、计算、简答题(28分)1 有二叉树,先序遍历结果EBADCFHGIKJ,中序遍历结果为ABCDEFGHIJK,则后序遍历结果是什么?2 有数字序列(40,28,16,56,50,32,30,63),按次序插入每个对象生成一棵A VL树,对该树插入完成后,给出该树的后序遍历结果。

数据结构原理测试题

数据结构原理测试题

数据结构原理测试题一、选择题1. 数据结构定义中的“数据”是指()。

A. 存储在计算机中的二进制代码B. 存储在计算机中的实际信息C. 存储在计算机中的程序指令D. 存储在计算机中的运算结果2. 下列哪个不是线性结构?A. 栈B. 队列C. 树D. 链表3. 在一个栈中,后进先出的规则指的是()。

A. 先进先出B. 后进先出C. 先进后出D. 后进后出4. 以下哪个不属于树的基本操作?A. 插入B. 删除C. 查找D. 遍历5. 在二叉树中,每个节点最多有几个子节点?A. 0B. 1C. 2D. 不确定,可能为任意个数6. 下列哪种数据结构适合处理先进先出的数据?A. 栈B. 队列C. 树D. 图7. 在链表中,节点之间的关系是通过什么来确定的?A. 节点的值B. 节点的地址C. 节点的位置D. 节点的索引8. 在排序算法中,时间复杂度表示的是()。

A. 算法执行的速度B. 算法执行的次数C. 算法需要的内存D. 算法的稳定性9. 以下哪个不是常见的图遍历算法?A. 深度优先搜索B. 广度优先搜索C. 最短路径算法D. 最小生成树算法10. AVL树是一种()。

A. 平衡二叉树B. 二叉搜索树C. 红黑树D. 哈夫曼树二、填空题1. 在栈中,最先进入栈的元素称为()。

2. 在队列中,最后进入队列的元素称为()。

3. 在树中,没有子节点的节点称为()。

4. 在链表的第一个节点之前放置一个特殊节点,称为()节点。

5. 在二叉树中,每个节点最多可以有()个子节点。

6. 在图中,包含N个顶点和E条边,则其总度数为()。

7. 在快速排序算法中,选择的基准元素将数组分成两部分,称为()和()。

8. 在图的最短路径算法中,Dijkstra算法是基于()策略的。

三、简答题1. 请简述什么是数据结构,并举例说明其中的一个应用场景。

2. 请解释线性结构和非线性结构的区别,并分别举例说明。

3. 请解释栈的特点和应用场景,并给出一个栈的实际应用案例。

2005年10月《数据结构》试题及参考答案

2005年10月《数据结构》试题及参考答案

全国2005年10月高等教育自学考试全国统一命题考试数据结构试题课程代码:2331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1. 若将数据结构形式定义为二元组(K,R),其中K是数据元素的有限集合,则R是K上【】A. 操作的有限集合B. 映象的有限集合C. 类型的有限集合D. 关系的有限集合2. 在长度为n的顺序表中删除第i个元素(1≤i≤n)时,元素移动的次数为【】A. n-i+1B. iC. i+1D. n-i3. 若不带头结点的单链表的头指针为head,则该链表为空的判定条件是【】A. head==NULLB. head->next==NULLC. head!=NULLD. head->next==head4. 引起循环队列队头位置发生变化的操作是【】A. 出队B. 入队C. 取队头元素D. 取队尾元素5. 若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则不.可能出现的出栈序列是【】A. 2,4,3,1,5,6B. 3,2,4,1,6,5C. 4,3,2,1,5,6D. 2,3,5,1,6,46. 字符串通常采用的两种存储方式是【】A. 散列存储和索引存储B. 索引存储和链式存储C. 顺序存储和链式存储D. 散列存储和顺序存储7. 设主串长为n,模式串长为m(m≤n),则在匹配失败情况下,朴素匹配算法进行的无效位移次数为【】第 1 页共12 页A. mB. n-mC. n-m+1D. n8. 二维数组A[12][18]采用列优先的存储方法,若每个元素各占3个存储单元,且第1个元素的地址为150,则元素A[9][7]的地址为【】A. 429B. 432C. 435D. 4389. 对广义表L=((a,b),(c,d),(e,f))执行操作tail(tail(L))的结果是【】A. (e,f)B. ((e,f))C. (f)D. ( )10. 下列图示的顺序存储结构表示的二叉树是【】11. n个顶点的强连通图中至少含有【】A. n-1条有向边B. n条有向边C. n(n-1)/2条有向边D. n(n-1)条有向边12. 对关键字序列(56,23,78,92,88,67,19,34)进行增量为3的一趟希尔排序的结果为【】A. (19,23,56,34,78,67,88,92)B. (23,56,78,66,88,92,19,34)C. (19,23,34,56,67,78,88,92)D. (19,23,67,56,34,78,92,88)13. 若在9阶B-树中插入关键字引起结点分裂,则该结点在插入前含有的关键字个数为【】第 2 页共12 页A. 4B. 5C. 8D. 914. 由同一关键字集合构造的各棵二叉排序树【】A. 其形态不一定相同,但平均查找长度相同B. 其形态不一定相同,平均查找长度也不一定相同C. 其形态均相同,但平均查找长度不一定相同D. 其形态均相同,平均查找长度也都相同15. ISAM文件和VSAM文件的区别之一是【】A. 前者是索引顺序文件,后者是索引非顺序文件B. 前者只能进行顺序存取,后者只能进行随机存取C. 前者建立静态索引结构,后者建立动态索引结构D. 前者的存储介质是磁盘,后者的存储介质不是磁盘二、填空题(本大题共10小题,每空2分,共20分)16. 数据的逻辑结构在计算机存储器内的表示,称为数据的____________。

2005级电子“数据结构”期中测验试卷

2005级电子“数据结构”期中测验试卷

2005级电子“数据结构”期中测验试卷1.(24分)填空:1.一个完整的算法应该具有输入、输出、有穷性、确定性和___可行性_______等五个特性。

其中有穷性表示__算法在有穷步结束___。

2.数据的基本存储结构包括_连续的(数组)_ 和链式(指针)____。

3. 长度为n的线性表采用顺序存储结构,在表的第i个位置插入一个元素需要___n-i+1 (包括写入欲插入的元素)______次移动元素的操作,在所有可能的位置插入的平均移动次数为____1+2+...+n+1 ____。

假定在每个位置插入的概率相等。

4. L指向带头结点的单链表的头结点,则单链表空的条件是___L->Next ==NULL___。

5.一个算法的时间复杂度表示为问题规模n的函数为T(n) = 3n2 + 50nlg n – 10000n。

用大O表示法为___O(n2)___,因为_____T(n)<53n 2___; 用大✈ 表示法为__✈(n 2)______, 因为____T(n)/ n 2 -> 3_______________。

6. 在有序表(12,24,36,48,60,72,84)中折半查找关键字72时所需进行的关键字比较次数为3次。

一般地,二分查找成功的最大比较次数与查找树的__高度________成正比。

7.使用折半查找的查找表必须是按关键字有序的,其存储结构应该采用_连续结构(随机存取结构,数组)_____________。

8.由下列序列构造的初始(大顶)堆是__39 34 38 31 24 17 27____:17 24 38 31 34 39 279.假设哈希表的长度是M, 使用的哈希函数为h, 插入关键字k时发生冲突, 那么使用线性探查法的探查序列为__(h(k)+1)%M, (h(k)+2)%M, ... __________, 使用平方探查法的探查序列为_(h(k)+1)%M, (h(k)+4)%M, (h(k)+9)%M, ...______。

数据结构试题05(有答案)

数据结构试题05(有答案)

课程测试试题(卷)----------------------以下为教师填写--------------------I、命题院(部):数学与计算机科学学院II、课程名称:数据结构III、测试学期:20 -20 学年度第学期IV、测试对象:学院专业级班V、问卷页数(A4):页VI、答卷页数(A4):页VII、考试方式:闭卷(开卷、闭卷或课程小论文,请填写清楚)VIII、问卷内容:(请老师在出题时安排紧凑,填空题象征性的留出一点空格,学生将所有的答案做在答题纸上的规定位置,并写清楚大题、小题的题号)一、选择题(20分)1.组成数据的基本单位是()。

(A) 数据项(B) 数据类型(C) 数据元素(D) 数据变量2.设数据结构A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构A是()。

(A) 线性结构(B) 树型结构 (C) 图型结构(D) 集合3.数组的逻辑结构不同于下列()的逻辑结构。

(A) 线性表(B) 栈(C) 队列(D) 树4.二叉树中第i(i≥1)层上的结点数最多有()个。

(A) 2i (B) 2i(C) 2i-1(D) 2i-15.设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为()。

(A) p->next=p->next->next (B) p=p->next(C) p=p->next->next (D) p->next=p6.设栈S和队列Q的初始状态为空,元素E1、E2、E3、E4、E5和E6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S的容量至少应该是()。

(A) 6 (B) 4 (C) 3 (D) 27.将10阶对称矩阵压缩存储到一维数组A中,则数组A的长度最少为()。

数据结构考试试题及答案

数据结构考试试题及答案

数据结构考试试题及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用什么类型的数据结构来实现?A. 栈B. 队列C. 数组D. 链表答案:C2. 下列选项中,哪一个不是二叉树的性质?A. 任意节点的左子树和右子树的深度可能不同B. 任意节点的左子树和右子树的深度相同C. 任意节点的左子树和右子树的节点数可能不同D. 任意节点的左子树和右子树的节点数相同答案:B3. 哈希表的冲突解决方法不包括以下哪种?A. 开放定址法B. 链地址法C. 线性探测法D. 排序法答案:D4. 以下哪种排序算法的时间复杂度最低?A. 冒泡排序B. 快速排序C. 插入排序D. 归并排序答案:B5. 在图的遍历算法中,深度优先搜索(DFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:B6. 以下哪种数据结构可以有效地实现稀疏矩阵的存储?A. 顺序存储B. 链表C. 散列D. 邻接矩阵答案:C7. 在二叉搜索树中,插入一个新节点后,树的平衡因子可能为:A. -2B. 0C. 2D. 3答案:A8. 堆数据结构中,父节点的值总是大于其子节点的值,这种堆被称为:A. 最小堆B. 最大堆C. 完全二叉树D. 满二叉树答案:B9. 以下哪个算法不是动态查找表的算法?A. 直接查找B. 二分查找C. 斐波那契查找D. 哈希查找答案:A10. 在图的遍历算法中,广度优先搜索(BFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:C二、填空题(每题2分,共20分)1. 在数据结构中,栈是一种______结构,遵循后进先出(LIFO)的原则。

答案:线性2. 一个具有n个顶点的无向图的边数最多为______。

答案:n*(n-1)/23. 快速排序算法的时间复杂度在最坏情况下为______。

答案:O(n^2)4. 在哈希表中,如果一个关键字的哈希地址已经被占用,则需要进行______。

数据结构考试试题及答案

数据结构考试试题及答案

数据结构考试试题及答案一、选择题(每题2分,共60分)1. 数据结构是指()。

A. 用来存储和组织数据的方式和方法B. 构建数据的逻辑关系C. 存储和处理数据的工具和技术D. 对数据进行操作和管理的过程2. 下列哪种数据结构是线性结构()。

A. 树B. 图C. 队列D. 堆3. 下列哪种数据结构是非线性结构()。

A. 栈B. 队列C. 数组D. 树4. 栈是一种()。

A. 先进先出的数据结构B. 先进后出的数据结构C. 后进先出的数据结构D. 后进后出的数据结构5. 在二叉树中,每个节点最多有几个孩子节点()。

A. 0B. 1C. 2D. 36. 下列哪种排序算法的时间复杂度最好()。

A. 冒泡排序B. 插入排序C. 快速排序D. 归并排序7. 哈希表的查找时间复杂度是()。

A. O(1)B. O(logn)C. O(n)D. O(nlogn)8. 链表的插入和删除操作时间复杂度是()。

A. O(1)B. O(logn)C. O(n)D. O(nlogn)9. 广度优先搜索算法一般使用()数据结构来实现。

A. 栈B. 队列C. 堆D. 树10. 什么是递归()。

A. 函数调用自身的过程B. 通过循环完成的过程C. 一种数据结构D. 没有调用其他函数的过程二、填空题(每题2分,共20分)1. 数据结构中,线性表是由一系列 _______________ 元素构成的数据结构。

2. 在树结构中,每个节点可以有 _______________ 个子节点。

3. 在图结构中,节点之间的关系可以用 _______________ 来表示。

4. _______________ 是一种递归定义的数据结构,它由若干个节点组成,每个节点都有零个或多个子节点。

5. 在堆排序中,堆是一种 _______________ 数据结构。

6. _______________ 是一种常用的搜索算法,常用于解决最短路径问题。

7. 在散列表中,使用 _______________ 来解决冲突问题。

2005年底数据结构试卷B参考答案

2005年底数据结构试卷B参考答案

一、选择题1.C 2.B 3.A 4.B 5.A6.B 7.D 8.B 9.C 10.C二、填空题1.(49,13,27,50,76,38,65,97)2.t=(bitree *)malloc(sizeof(bitree)),bstinsert(t->rchild,k)3.p->next=s4.head->rlink,p->llink5.CABD6.1,167.08.(13,27,38,50,76,49,65,97)9.n-110.50三、判断题1.错2.错3.对4.对5.错6.错7.对8.对9.错10.错四、算法设计题1.设计在链式结构上实现简单选择排序算法。

void simpleselectsorlklist(lklist *&head){lklist *p,*q,*s; int min,t;if(head==0 ||head->next==0) return;for(q=head; q!=0;q=q->next){min=q->data; s=q;for(p=q->next; p!=0;p=p->next) if(min>p->data){min=p->data; s=p;}if(s!=q){t=s->data; s->data=q->data; q->data=t;}}}2.设计在顺序存储结构上实现求子串算法。

void substring(char s[ ], long start, long count, char t[ ]){long i,j,length=strlen(s);if (start<1 || start>length) printf("The copy position is wrong");else if (start+count-1>length) printf("Too characters to be copied");else { for(i=start-1,j=0; i<start+count-1;i++,j++) t[j]=s[i]; t[j]= '\0';}}3.设计求结点在二叉排序树中层次的算法。

数据结构试题集(8套卷子+答案)

数据结构试题集(8套卷子+答案)

《数据结构》试卷一一、填空题:(共20分)1、当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用存储结构。

2、队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其特点是。

3、在一棵二叉树中,度为0的结点个数为n0,度为2的个数为n2,则n0= 。

4、二叉树的前序遍历序列等同于该二叉树所对应森林的遍历序列5、对一棵二叉排序树,若以遍历该树,将得到一个以关键字递增顺序排列的有序序列。

6、三个结点a,b,c组成二叉树,共有种不同的结构。

7、在AVL树中,由于在A结点的右孩子的右子树上插入结点,使A结点的平衡因子由-1变为-2,使其失去平衡,应采用型平衡旋转。

8、图的遍历有两种,它们是。

9、堆排序的时间复杂度为。

10、在含有N个结点的二叉链表中有空链域,通常用这些空链域存储线索,从而得另一种链式存储结构----线索链表。

二、单项选择题(共20分)1、若进栈序列为1,2,3,4,假定进栈和出栈可以穿插进行,则可能的出栈序列是()(A)2,4,1,3(B)3,1,4,2(C)3,4,1,2(D)1,2,3,42、有一棵非空的二叉树,(第0层为根结点),其第i层上最多有多少个结点?()(A)2i(B)21-i(C)21+i(D) i3、设电文中出现的字母为A,B,C,D,E,每个字母在电文中出现的次数分别为9,27,3,5,11,按huffman编码,则字母A编码为()(A)10(B)110(C)1110(D)11114、下面关于数据结构的叙述中,正确的叙述是()(A)顺序存储方式的优点是存储密度大,且插、删除运算效率高(B)链表中每个结点都恰好包含一个指针(C)包含n个结点的二叉排序树的最大检索长度为logn2(D)将一棵树转为二叉树后,根结点无右子树5、程序段:y:=0while n>=(y+1)*(y+1) doy:=y+1enddo的时间复杂度为()(A)O(n) (B)O(n2) (C)O(n2/1) (D)O(1)6、排序方法中,关键码比较的次数与记录的初始排列无关的是( )(A) shell排序 (B) 归并排序 (C) 直接插入排序 (D) 直接选择排序7、数组q[0..n-1]作为一个环行队列,f 为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数总小于n,则队列中元素个数为( )(A) r-f (B) n+f-r (C) n+r-f (D) (n+r-f) mod n8、为了有效的利用散列查找技术,需要解决的问题是:( )Ⅰ:找一个好的散列函数Ⅱ:设计有效的解决冲突的方法Ⅲ:用整数表示关键码值(A) Ⅰ和Ⅲ (B) Ⅰ和Ⅱ (C) Ⅱ和Ⅲ (D) Ⅰ,Ⅱ和Ⅲ9、引入线索二叉树的目的是()(A) 加快查找结点的前驱或后继的速度(B) 为了能在二叉树中方便的进行插入与删除(C) :为了能方便的找到双亲(D) 使二叉树的遍历结果唯一10、用二分(折半)查找表的元素的速度比用顺序法()(A) 必然快(B) 必然慢(C): 相等(D): 不能确定三、简答题:(共40分)1、已知某二叉树按中序遍历序列为BFDAEGC,按前序遍历序列为ABDFCEG,试画出该二叉树形状,并写出它的后序遍历序列。

山东大学2005年数据结构专业课考研真题试卷

山东大学2005年数据结构专业课考研真题试卷

山东大学2005年数据结构专业课考研真题试卷
先贴05年的试题,可能是对大家最有帮助的内容:
我先说一道:
第二题:
2、已知下面函数:
int undown (* A,n)
{ if n=1 return 0;
if A[0]
return undown (A+1,n-1);
}
(1)请说出上面函数的功能,及时间复杂度。

(2)已知A={11,56,3,2,5,8,49,7,1},求结果。

AVL树的定义
高度为h的AVL树最少有多少结点,最多有多少结点
n个结点的高度?
一组数据,给出快速排序的排序结果,如果有序,快速排序的轴选择对时间复杂性的影响
十一题 A,B为单链表队列,设计算法使A=A交B,给出算法
十三题
1、给出递归算法求图中所有顶点间最小路径的算法
2、B+树的插入,删除,如何计算磁盘读写的次数
3、一个二叉树的中序和后序序列,写出创建树的算法
4、写出递规求最短路径的方法,并证明为什么是最短的(同上面那个)
5、上三角和下三角矩阵计算元素的位置
6、散列表概念,冲突和什么相关?
7、单链表队列,只有一个tail指针,写出入队和出队算法
8、对二叉树中序遍历,写出begin()和 next()两个函数
9、单链表的元素为整数,按照奇数,偶数分成两个链表
10、给出一个数列,用快速排序法写出排序过程,并证明对已经有序的序列退化为O(n2)
题目虽然多,但新题形很少,很多题目出现在各种习题集和辅导资料中。

B+树的磁盘读写问题必须要看机械出版社的那本老外写的书。

最上面那道题如果不会做,说明你程序的阅读能力不强,要加强训练。

数据结构考试题及答案

数据结构考试题及答案

数据结构考试题及答案一、单项选择题(每题2分,共10分)1. 在数据结构中,线性表的顺序存储结构是指()。

A. 元素按照逻辑顺序依次存储在数组中B. 元素按照逻辑顺序依次存储在链表中C. 元素按照物理顺序依次存储在数组中D. 元素按照物理顺序依次存储在链表中答案:C2. 以下哪个不是二叉树的性质()。

A. 任意节点的左子树和右子树的节点数之和为该节点的度B. 任意节点的左子树和右子树的节点数之和为该节点的子树数C. 任意节点的左子树和右子树中所有节点的值都小于该节点的值D. 任意节点的左子树和右子树中所有节点的值都大于该节点的值答案:B3. 在图的遍历中,深度优先搜索(DFS)使用的是()。

A. 队列B. 栈C. 链表D. 数组答案:B4. 哈希表解决冲突的方法不包括()。

A. 分离链接法B. 线性探测法C. 链地址法D. 二分查找法答案:D5. 快速排序算法的时间复杂度在最坏情况下是()。

A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C二、填空题(每题2分,共10分)1. 在数据结构中,栈的特点是__后进先出__。

2. 一个具有n个顶点的连通图至少有__n-1__条边。

3. 冒泡排序算法的时间复杂度在最好情况下是__O(n)__。

4. 在二叉搜索树中,对于任意节点,其左子树中的所有节点的值都__小于__该节点的值。

5. 哈夫曼编码是一种__最优__编码方法。

三、简答题(每题5分,共20分)1. 请简述链表和数组的区别。

答:链表和数组都是用于存储数据的线性数据结构,但它们在内存中存储方式和操作效率上有所不同。

链表中的每个元素包含数据和指向下一个元素的指针,因此它们在内存中可以不连续存储,插入和删除操作效率高,但访问效率低。

而数组中的元素在内存中是连续存储的,访问效率高,但插入和删除操作效率低。

2. 什么是图的遍历?答:图的遍历是指按照某种顺序访问图中的每个顶点,使得每个顶点都被访问一次。

2005研究生入学考试《数据结构》候选题集(判断选择填空)、参考答案

2005研究生入学考试《数据结构》候选题集(判断选择填空)、参考答案

《数据结构》候选题集及参考答案一、判断题1.线性表的逻辑顺序与物理顺序总是一致的。

(错)2.线性表的顺序存储表示优于链式存储表示。

(错)3.线性表的链式存储表示优于顺序存储表示。

(错)4.线性表若采用链式存储表示时所有结点之间的存储单元地址可连续可不连续。

(对)5.栈是一种线性结构。

(对)6.队列是一种线性结构。

(对)7.对于循环队列,在队满情况下不能作入队处理,否则,将产生“上溢”。

(对)8.在栈为空的情况下不能作出栈处理,否则,将产生“下溢”。

(对)9.即使对不含相同元素的同一输入序列进行两组不同的、合法的入栈和出栈组合操作,所得的输出序列也一定相同。

( 错 )10.非特殊稀疏矩阵压缩存储后,必会失去随机存取功能。

(对)11.(101,88,46,70,34,39,45,58,66,10)是堆。

( 对 )12.将一棵树转换成二叉树后,根结点没有左子树。

( 错 )13.将一棵树转换成二叉树后,根结点没有右子树。

( 对 )14.完全二叉树中,若某结点无左孩子,则它必是叶结点。

(对)15.若一棵二叉树的任一非叶子结点度为2,则该二叉树为满二叉树。

(错)16.用二叉树的前序遍历序列和中序遍历序列可以导出二叉树的后序遍历序列。

(对 )17.由一棵二叉树的前序遍历序列和后序遍历序列可唯一确定这棵二叉树。

(错)18.用树的前序遍历序列和中序遍历序列可以导出树的后序遍历序列。

(错?? )19.哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。

(对)20.哈夫曼树一定是满二叉树。

(错)21.AVL树的任何子树都是AVL树。

(对)22.如果一棵树的左右子树都是AVL树,则这棵树也是AVL树。

(错)23.用邻接矩阵作为图的存储结构,所用的存储空间大小与图的边数成正比。

(错)24.用邻接矩阵作为图的存储结构,所用的存储空间大小与图的顶点数成正比。

(对)25.用邻接矩阵存储图时所需存储空间大小与图的结点数有关,而与边数无关。

2005年1月自考数据结构试题真题

2005年1月自考数据结构试题真题

全国2005年1月高等教育自学考试数据结构试题课程代码:02331第一部分选择题(共30分)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.数据元素及其关系在计算机存储器内的表示,称为数据的( )A.逻辑结构B.存储结构C.线性结构D.非线性结构2.某带头结点的单链表的头指针为head,判定该链表为非空的条件是( )A.head==NULLB.head->next==NULLC.head!=NULLD.head->next!=NULL3.导致栈上溢的操作是( )A.栈满时执行的出栈B.栈满时执行的入栈C.栈空时执行的出栈D.栈空时执行的入栈4.设数组A[m]为循环队列Q的存储空间,front为队头指针,rear为队尾指针,则判定Q为空队列的条件是( )A.(rear-front)%m= =1B.front= =rearC.(rear-front)%m= =m-1D.front= =(rear+1)%m5.假设S=″I AM A STUDENT″,则运算substr(S,4,8)的结果为( )A.″M A S″B.″M A STUD″C.″A STUDEN″D.″STUD″6.在执行简单的串匹配算法时,最坏的情况为每次匹配比较不等的字符出现的位置均为( )A.模式串的最末字符B.主串的第一个字符C.模式串的第一个字符D.主串的最末字符7.从广义表L=(((d),c,d))中分解得到(d)的操作为( )A.head(head(head(L)))B.head(tail(head(L)))C.tail(head(head(L)))D.tail(tail(head(L)))8.假设一棵完全二叉树按层次遍历的顺序依次存放在数组BT[m]中,其中根结点存放在BT[0],若BT[i]中的结点有左孩子,则左孩子存放在( )A.BT[i/2]B.BT[2*i-1]C.BT[2*i]D.BT[2*i+1]浙02331# 数据结构试题第 1 页共6页浙02331# 数据结构试题 第 2 页 共6页9.右图所示二叉树的中序序列是( ) A.DHEBAFIJCG B.DHEBAFJICG C.DBHEAFCJIG D.DBHEAFJICG10.连通图是指图中任意两个顶点之间( )A.都连通的无向图B.都不连通的无向图C.都连通的有向图D.都不连通的有向图 11.下图所示带权无向图的最小生成树的权为( ) A.14 B.15 C.17 D.1812.对记录序列(314,298,508,123,486,145)依次按个位和十位进行两趟基数排序之后所得结果为( ) A.123,145,298,314,486,508 B.508,314,123,145,486,298 C.486,314,123,145,508,298D.298,123,508,486,145,31413.在待排关键字序列基本有序的前提下,效率最高的排序方法是( ) A.直接插入排序 B.快速排序 C.直接选择排序D.归并排序14.在下列各棵二叉树中,二叉排序树是()15.采用ISAM 或VSAM 组织的文件是( ) A.索引非顺序文件 B.顺序文件 C.索引顺序文件 D.散列文件第二部分非选择题(共70分)二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。

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

数据结构期末试卷2005/01/08
班级__________姓名___________学号_______成绩___________ 一、填空和选择(共15分)
1.在n个元素的顺序表中插入或删除一个元素,需平均移动______个元素。

2.在双向链表p所指结点之后插入s所指结点的操作是______________
A.p→right=s; s→left=p; p→right→left=s; s→right=p→right;
B.p→right=s; p→right→left=s; s→left=p; s→right=p→right;
C.s→left=p; s→right=p→right; p→right=s; p→right→left=s;
D.s→left=p; s→right=p→right; p→right→left=s; p→right=s;
3.在数据结构中,从逻辑上可以把数据结构分成_________。

A.动态结构和静态结构B.紧凑结构和非紧凑结构
C.线性结构和非线性结构D.内部结构和外部结构
4.算法分析的两个主要方面是____。

A.空间复杂性和时间复杂性B.正确性和简明性
C.可读性和文档性D.数据复杂性和程序复杂性
5.线性表的顺序存储结构是一种______的存储结构,线性表的链式存储结构是一种______的存储结构。

A.随机存取B.顺序存取C.索引存取D.散列存取
6.向量、栈和队列都是______结构,可以在向量的________位置插入和删除元素;对于栈只能在_________插入和删除元素;对于队列只能在_______插入元素和在_______删除元素。

7.设循环队列中数组的下标范围是1~n,其头尾指针分别为f和r,则其元素个数为___________。

A.r-f B.r-f+1 C.(r-f) mod n +1 D.(r-f+n) mod n
8.将下三角矩阵A[7,7]的下三角部分逐行地存储到起始地址为1000的内存单元中(下标从0开始,不存储上三角部分),已知每个元素占4个单元,则A[5,4]的地址是_____________。

9.某二叉树的前序遍历结点访问顺序是abdgcefh, 中序遍历的结点访问顺序是dgbaechf, 则其后序遍历的结点访问顺序是______
A.bdgcefha
B.gdbecfha
C.bdgaechf
D.gdbehfca
二、简答题
1.(4分)求一棵满k叉树上的叶子结点数n0和非叶子结点数n k之间满足的关系。

2.(4分)假设高度为H的二叉树上只有度为0和度为2的结点,问此类二叉树中结点数可能达到的最大值和最小值各是多少?
3.(6分)根据下面的矩阵,写出相应的三元组表,并写出矩阵转置后的三元组表。

(不要求过程)
0 12 9 0 0 0 0
0 0 0 0 5 0 0
-3 0 0 0 0 14 0
0 0 13 0 0 0 0
0 18 0 0 0 0 0
15 0 0 0 0 0 0
三、(10分)判断以下序列是否为小(顶)根堆?若否,则以最少的移动次数将它们调整为小(顶)根堆。

(要求画出最后的堆结构和线性序列)(1)(19,78,32,66,26,58,46,95,89,31)
(2)(113,98,69,35,68,25,43,19,31,55,16,29)
四、(8分)设有关键码序列(Q,H,C,Y,Q,A,M,S,R,D,F,X),要求按照关键码值递增的次序进行排序。

(1)若采用初始步长为4的Shell(希尔)排序法,写出一趟排序的结果;(2)若采用以第一个元素为分界元素(枢轴)的快速排序法,写出一趟排序的结果。

六、综合题
1.以下各图:
(1)(4分)分别画出和下列树对应的各个二叉树;
(2)(4分)对各棵树按树的遍历规则给出先根遍历序列、后根遍历序列;
(3)(4分)对(1)中得到的各棵二叉树给出先根遍历序列、后根遍历序列。

1
234
567910
8
111213
A
B
C D E F G
I
H
2.(10分)画出下图所示的无向图的邻接表(顶点由A到H排列),并根据所得邻接表给出深度优先和广度优先搜索遍历该图所的顶点序列。

A
B
H
C
G
F
D
E
3.(11分)假设用于通信的电文仅由10个字符(A,B,C,D,E,F,G,H,I,J)组成,字符在电文中出现的频率分别为(0.10, 0.19, 0.02, 0.05, 0.17, 0.03, 0.21, 0.07, 0.15, 0.01)。

(1)画出哈夫曼树;
(2)最长的编码为几位,对应哪些字符?最短的编码为几位,对应哪些字符。

(3)计算其带权路径长度。

4.(6分)设一个散列表包含hashSize=13个表项,其下标从0到12,采用链地址(拉链)法解决冲突. 请按以下要求,将下列关键码散列到表中.
(10 100 32 45 58 126 3 29 200 400 0)
(1) 散列函数采用除留余数法,用%hashSize(取余运算)构造hash表;
(2) 并计算查找成功时的平均查找长度。

七、(14分)完成下列折半(二分)查找算法
(ST为顺序表,key为要查找的关键字。

)
.
int Search_Bin(SSTable ST, KeyType key ){ //
low=1; high=ST.length;
while (________________________________){
mid=____________________;
if (__________________________________)
return _____________;
else if (____________________________________) high=____________________;
else low=____________________;
}
return 0;
}。

相关文档
最新文档