数据结构(C语言版)复习题概论

合集下载

大数据结构(C语言)【经典精彩试题库】附含问题详解解析汇报

大数据结构(C语言)【经典精彩试题库】附含问题详解解析汇报

《数据结构与算法》复习题选择题1.在数据结构中,从逻辑上可以把数据结构分为 C 。

A.动态结构和静态结构 B.紧凑结构和非紧凑结构C.线性结构和非线性结构 D.内部结构和外部结构2.数据结构在计算机内存中的表示是指 A 。

A.数据的存储结构 B.数据结构 C.数据的逻辑结构 D.数据元素之间的关系3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。

A.逻辑 B.存储 C.逻辑和存储 D.物理4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C 。

A.数据的处理方法 B.数据元素的类型C.数据元素之间的关系 D.数据的存储方法5.在决定选取何种存储结构时,一般不考虑 A 。

A.各结点的值如何 B.结点个数的多少C.对数据有哪些运算 D.所用的编程语言实现这种结构是否方便。

6.以下说法正确的是 D 。

A.数据项是数据的基本单位B.数据元素是数据的最小单位C.数据结构是带结构的数据项的集合D.一些表面上很不相同的数据可以有相同的逻辑结构7.算法分析的目的是 C ,算法分析的两个主要方面是 A 。

(1)A.找出数据结构的合理性 B.研究算法中的输入和输出的关系C.分析算法的效率以求改进 C.分析算法的易读性和文档性(2)A.空间复杂度和时间复杂度 B.正确性和简明性C.可读性和文档性 D.数据复杂性和程序复杂性8.下面程序段的时间复杂度是 O(n2) 。

s =0;for( I =0; i<n; i++)for(j=0;j<n;j++)s +=B[i][j];sum = s ;9.下面程序段的时间复杂度是 O(n*m) 。

for( i =0; i<n; i++)for(j=0;j<m;j++)A[i][j] = 0;10.下面程序段的时间复杂度是 O(logn) 。

3i = 0;while(i<=n)i = i * 3;11.在以下的叙述中,正确的是 B 。

数据结构c语言版试题大全(含答案)

数据结构c语言版试题大全(含答案)

数据结构c语言版试题大全(含答案)数据结构C语言版试题大全(含答案)第一章:基本概念与算法设计1.1 数据结构的定义与特点数据结构是指相互之间存在一种或多种特定关系的数据元素的集合,它包括了数据的存储、组织和管理方式。

数据结构的特点包括以下几个方面:- 数据元素之间存在某种关系,构成逻辑结构- 对数据元素的操作对应于对其逻辑结构的操作- 数据结构有存储结构,包括顺序存储结构和链式存储结构- 算法是对数据结构的操作步骤的描述和实现1.2 算法的基本概念算法是解决特定问题或完成特定任务的一系列操作步骤。

算法的基本概念包括以下几个方面:- 有穷性:算法必须能在有限步骤内完成- 确定性:算法的每一步骤必须有确定的含义和结果- 可行性:算法的每一步骤必须可行,能够通过执行有限次数实现- 输入:算法接受的输入数据是原始问题的实例- 输出:算法产生的输出数据与输入有明确的关系1.3 算法的描述方法算法可以用自然语言、伪代码或流程图来描述。

常用的伪代码描述方法包括结构化语言和算法描述语言,结构化语言包括顺序结构、分支结构和循环结构。

第二章:线性结构2.1 线性表的定义与基本操作线性表是n个数据元素的有限序列,其中相邻元素之间存在唯一的前驱和后继关系。

线性表的基本操作包括插入、删除、查找和修改等。

2.2 数组与广义表数组是指具有相同数据类型的一组数据元素的集合,可以通过下标访问元素。

广义表是线性表的推广,其中元素可以是基本数据类型或另一个广义表。

第三章:树与二叉树3.1 树的定义与基本术语树是n(n≥0)个结点的一个有限集合,其中满足以下条件:- 有且仅有一个特定的称为根的结点- 其余结点可分为m(m≥0)个互不相交的有限集合,每个集合本身又是一棵树3.2 二叉树的定义与性质二叉树是指每个结点最多有两个子结点的树结构。

二叉树的性质包括以下几个方面:- 深度为k的二叉树最多有2^k-1个结点- 一棵二叉树的第i层最多有2^(i-1)个结点- 在二叉树的第i层上至多有2^(n-i+1)-1个结点(n为树的深度)第四章:图4.1 图的基本概念与术语图是由顶点的有穷非空集合和边的有穷集合组成的。

数据结构c语言版试题及答案

数据结构c语言版试题及答案

数据结构c语言版试题及答案一、选择题(每题2分,共10分)1. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A2. 若有一个结构体数组,下列哪个函数可以用来初始化数组中的每个元素?A. memsetB. memcpyC. strcpyD. bzero答案:A3. 在C语言中,以下哪个函数用于动态分配内存?A. mallocB. callocC. reallocD. all of the above答案:D4. 对于一个链表,以下哪个操作是正确的?A. 插入节点B. 删除节点C. 遍历链表D. all of the above答案:D5. 在C语言中,以下哪个函数用于释放动态分配的内存?A. freeB. mallocC. callocD. realloc答案:A二、填空题(每题3分,共15分)1. 结构体定义的关键字是______。

答案:struct2. 在C语言中,动态分配内存失败时,malloc函数返回______。

答案:NULL3. 单链表的头节点指针通常初始化为______。

答案:NULL4. 双向链表中,每个节点包含______个指针。

答案:两个5. 树的深度优先遍历包括______、中序遍历和后序遍历。

答案:前序遍历三、简答题(每题5分,共20分)1. 请简述C语言中结构体和联合体的区别。

答案:结构体(struct)可以包含不同类型的数据,并且可以有多个实例;联合体(union)可以包含不同类型的数据,但是只能有一个实例,即在任意时刻只能存储其中一个成员的值。

2. 动态内存分配的优点是什么?答案:动态内存分配允许程序在运行时根据需要分配内存,这样可以更有效地使用内存资源,并且可以创建大小不固定的数据结构。

3. 链表相比于数组有哪些优点?答案:链表的优点包括动态大小,可以灵活地插入和删除节点,不需要预先知道数据的大小。

《数据结构C语言》考研复习题库

《数据结构C语言》考研复习题库

《数据结构C语言》考研复习题库一、选择题1、在一个具有 n 个单元的顺序栈中,假定以地址低端(即 0 单元)作为栈底,以 top 作为栈顶指针,当做出栈处理时,top 变化为()。

A top 不变B top = 0C topD top++答案:C解释:在顺序栈中,出栈操作会使栈顶指针 top 减 1,即 top。

2、一个队列的入队序列是 1,2,3,4,则队列的输出序列是()。

A 4,3,2,1B 1,2,3,4C 1,4,3,2D 3,2,4,1答案:B解释:队列是先进先出的数据结构,入队顺序为 1,2,3,4,那么出队顺序也为 1,2,3,4。

3、串是一种特殊的线性表,其特殊性体现在()。

A 可以顺序存储B 数据元素是一个字符C 可以链式存储D 数据元素可以是多个字符答案:B解释:串的数据元素是字符,这是它与一般线性表的区别。

4、设有一个 10 阶的对称矩阵 A,采用压缩存储方式,以行序为主存储,a11 为第一元素,其存储地址为 1,每个元素占一个地址空间,则 a85 的地址为()。

A 33B 32C 18D 40答案:A解释:对于对称矩阵,只存储其下三角或上三角部分。

对于一个 n阶对称矩阵,若以行序为主存储下三角部分,aij 的存储位置为 i(i 1)/2 + j 1。

所以 a85 的地址为 8(8 1)/2 + 5 1 = 33。

5、一棵完全二叉树共有 700 个结点,则在该二叉树中有()个叶子结点。

A 350B 349C 351D 不确定答案:C解释:根据完全二叉树的性质,度为 1 的结点个数最多为 1 个。

设n0 为叶子结点个数,n1 为度为 1 的结点个数,n2 为度为 2 的结点个数。

则 n = n0 + n1 + n2 ,n 1 = 2n2 + n1 。

因为 n = 700 ,且 n1 为 0或 1 ,通过计算可得 n0 = 351 。

二、填空题1、数据的逻辑结构被分为_____、_____、_____和_____四种。

数据结构与算法复习题10(C语言版)

数据结构与算法复习题10(C语言版)

习10解答判断题:1.排序的功能是将一个数据元素(或记录)的任意序列,重新排成一个按关键字有序的序列。

( )答:TRUE2.直接插入排序的基本操作是将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表。

( )答:TRUE3.使用简单选择排序方法无论记录的初始排列如何,所需进行的关键字间的比较次数相同。

( )答:TRUE4.用希尔(Shell)方法排序时,若关键字的初始排序杂乱无序,则排序效率就低。

()答:FALSE(希尔排序又称“缩小增量排序”,即每趟只对相同增量距离的关键字进行比较,这与关键字序列初始有序或无序无关)单选题:5.在对n个元素进行简单选择排序过程中,第i趟需从( )个元素中选择出最小值元素。

A.n-i+1 B. n-i C.i D. i+1答:A6. n个记录直接插入排序所需的记录最小比较次数是 ( )A. n-1B. 2(n-1)C. (n+2)(n-1)/2D. n答:A(注:如果初始记录序列就是一个符合要求的有序序列,则每趟操作只做一次比较,n-1趟操作仅需n-1次比较。

参见严蔚敏《(c语言版)数据结构》P.265) 7.若用起泡排序对关键字序列{18,16,14,12,10,8}进行从小到大的排序,所需进行的关键字比较总次数是()A.10 B. 15 C. 21 D. 34答:B (注:参见严蔚敏《(c语言版)数据结构》P.274, 此题所给的初始序列为“逆序”,需要进行n(n-1)/2 = 6×(6-1)/2 = 15次比较。

)8. 用起泡法对n个关键码排序,在最好情况下,只需做次比较;在最坏的情况下要做次比较。

答:n-1, n(n-1)/2 (注:参见严蔚敏《(c语言版)数据结构》P.273~274)9.在所有排序方法中,关键字比较次数与记录的初始排列无关的是( )。

A.希尔排序 B. 起泡排序 C. 插入排序 D.选择排序答:D10. 一组记录的关键字为(45,80,55,40,42,85),则利用堆排序的方法建立的初始堆为( )。

《数据结构》(C语言版) 第一章 绪论 习题及答案

《数据结构》(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、紧凑结构和非紧凑结构B、动态结构和静态结构C、线性结构和非线性结构D、内部结构和外部结构7、数据的逻辑结构是指 ______ 关系的整体。

A、数据项之间逻辑B、数据元素之间逻辑C、数据类型之间D、存储结构之间8、以下是数据结构中 ______ 属非线性结构。

A、串B、栈C、队列D、平衡二叉树9、以下属于逻辑结构是 ______。

A、双链表B、单链表C、顺序表D、有序表10、以下不属于存储结构是______。

A、顺序表B、线性表C、邻接表D、单链表11、在计算机中存储数据时,通常不仅要存储各数据元素的值,而且还有存储 ______。

A、数据元素之间的关系B、数据元素的类型C、数据的处理方法D、数据的存储方法12、数据结构在计算机内存中的表示是指 ______。

A、数据的逻辑结构B、数据结构C、数据元素之间的关系D、数据的存储结构13、在数据的存储中,一个节点通常存储一个 ______。

A、数据结构B、数据元素C、数据项D、数据类型14、在决定选取任何类型的存储结构时,一般不多考虑 ______。

A、各节点的值如何B、节点个数的多少C、对数据有哪些运算D、所用编程语言实现这种结构是否方便15、数据在计算机的存储器中表示时,逻辑上相邻的两个元素对应的物理地址也是相邻的,这种存储结构称之为 ______。

数据结构(C语言版)复习题

数据结构(C语言版)复习题

一、单项选择题:1、树形结构不具备这样的特点:()A. 每个节点可能有多个后继(子节点)B. 每个节点可能有多个前驱(父节点)C. 可能有多个内节点(非终端结点)D. 可能有多个叶子节点(终端节点)2、二叉树与度数为2的树相同之处包括()。

A. 每个节点都有1个或2个子节点B. 至少有一个根节点C. 至少有一个度数为2的节点D. 每个节点至多只有一个父节点3、一棵完全二叉树有999 个结点,它的深度为()。

A.9 B.10 C.11 D.124、在一个单链表中,若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、对于一棵具有n个结点、度为5的树来说,()A. 树的高度至多是n-3B. 树的高度至多是n-4C. 树的高度至多是nD. 树的高度至多是n-56、在顺序队列中,元素的排列顺序()。

A. 由元素插入队列的先后顺序决定B. 与元素值的大小有关C. 与队首指针和队尾指针的取值有关D. 与数组大小有关7、串是一种特殊的线性表,其特殊性体现在()。

A.可以顺序存储 B.数据元素是一个字符C.可以链式存储 D.数据元素可以是多个字符若8、顺序循环队列中(数组的大小为 6),队头指示 front 和队尾指示 rear 的值分别为 3和 0,当从队列中删除1个元素,再插入2 个元素后,front和 rear的值分别为()。

A.5 和1 B.2和4 C.1和5 D.4 和29、一棵完全二叉树上有1001 个结点,其中叶子结点的个数为()。

A.250 B.500 C.254 D.50110、已知一个有向图如下图所示,则从顶点a出发进行深度优先遍历,不可能得到的DFS序列为()。

李春葆编著数据结构(C语言篇)习题与解析(修订版)

李春葆编著数据结构(C语言篇)习题与解析(修订版)

一、绪论选择题1.数据结构是一门研究非数值计算的程序设计问题中计算机的1以及它们之间的2和运算等的学科。

1 A.数据元素 B.计算方法 C.逻辑存储 D.数据映像2 A.结构 B.关系 C.运算 D.算法2.数据结构被形式地定义为(K, R),其中K是1的有限集,R是K上的2有限集。

1 A.算法 B.数据元素 C.数据操作 D.逻辑结构2 A.操作 B.映像 C.存储 D.关系3.在数据结构中,从逻辑上可以把数据结构分成。

A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构4.线性结构的顺序存储结构是一种1的存储结构,线性表的链式存储结构是一种2的存储结构。

A.随机存取B.顺序存取C.索引存取D.散列存取5.算法分析的目的是1,算法分析的两个主要方面是2。

1 A.找出数据结构的合理性 B.研究算法中的输入和输出的关系C.分析算法的效率以求改进D.分析算法的易懂性和文档性2 A.空间复杂度和时间复杂度 B.正确性和简单性C.可读性和文档性D.数据复杂性和程序复杂性6.计算机算法指的是1,它必须具备输入、输出和2等5个特性。

1 A.计算方法 B.排序方法 C.解决问题的有限运算序列 D.调度方法2 A.可执行性、可移植性和可扩充性 B.可行性、确定性和有穷性C.确定性、有穷性和稳定性D.易读性、稳定性和安全性7.线性表的逻辑顺序与存储顺序总是一致的,这种说法。

A.正确B.不正确8线性表若采用链式存储结构时,要求内存中可用存储单元的地址。

A.必须连续的B.部分地址必须连续的C.一定是不续的D连续不连续都可以9.以下的叙述中,正确的是。

A.线性表的存储结构优于链式存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出10.每种数据结构都具备三个基本运算:插入、删除和查找,这种说法。

A.正确B.不正确填空题1.数据逻辑结构包括三种类型、和,树形结构和图形结构合称为。

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

一、单项选择题:1、树形结构不具备这样的特点:()A. 每个节点可能有多个后继(子节点)B. 每个节点可能有多个前驱(父节点)C. 可能有多个内节点(非终端结点)D. 可能有多个叶子节点(终端节点)2、二叉树与度数为2的树相同之处包括()。

A. 每个节点都有1个或2个子节点B. 至少有一个根节点C. 至少有一个度数为2的节点D. 每个节点至多只有一个父节点3、一棵完全二叉树有999 个结点,它的深度为()。

A.9 B.10 C.11 D.124、在一个单链表中,若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、对于一棵具有n个结点、度为5的树来说,()A. 树的高度至多是n-3B. 树的高度至多是n-4C. 树的高度至多是nD. 树的高度至多是n-56、在顺序队列中,元素的排列顺序()。

A. 由元素插入队列的先后顺序决定B. 与元素值的大小有关C. 与队首指针和队尾指针的取值有关D. 与数组大小有关7、串是一种特殊的线性表,其特殊性体现在()。

A.可以顺序存储 B.数据元素是一个字符C.可以链式存储 D.数据元素可以是多个字符若8、顺序循环队列中(数组的大小为 6),队头指示 front 和队尾指示 rear 的值分别为 3和 0,当从队列中删除1个元素,再插入2 个元素后,front和 rear的值分别为()。

A.5 和1 B.2和4 C.1和5 D.4 和29、一棵完全二叉树上有1001 个结点,其中叶子结点的个数为()。

A.250 B.500 C.254 D.50110、已知一个有向图如下图所示,则从顶点a出发进行深度优先遍历,不可能得到的DFS序列为()。

A.adbefc B.adcefb C.adcebf D.adefbc11、在一个带权连通图G 中,权值最小的边一定包含在G 的()。

A.最小生成树中 B.深度优先生成树中C.广度优先生成树中 D.深度优先生成森林中12、适用于折半查找的表的存储方式及元素排列要求为()。

A.链式方式存储,元素无序 B.链式方式存储,元素有序C.顺序方式存储,元素无序 D.顺序方式存储,元素有序13、含有27个关键字节点的平衡二叉树(AVL树)()A. 有13个度数为2的节点B. 最大高度为6C. 最低高度是6D. 有14个度数为0的节点14、任何一个无向连通图的最小生成树()。

A. 有一棵或多棵B. 只有一棵C. 一定有多棵D. 可能不存在15、下述几种排序方法中,要求内存量最大的是()。

A.插入排序 B.选择排序 C.快速排序 D.归并排序16、以下属于逻辑结构的是()A. 顺序表B. 哈希表C. 有序表D. 单链表17、一个有n个顶点的无向图最多有()条边。

A. nB. n(n-1)C. n(n-1)/2D. 2n18、下面()算法适合构造一个稠密图G的最小生成树。

A. Prim算法 B.Kruskal算法 C.Floyd算法 D.Dijkstra算法19、下面哪个术语与数据的存储结构无关()。

A.顺序表 B.链表 C.散列表 D.队列20、无向图G=(V,E),其中:V={a,b,c,d,e,f},E={(a,b),(a,e),(a,c),(b,e),(c,f),(f,d),(e,d)},对该图进行深度优先遍历,得到的顶点序列正确的是()。

A.a,b,e,c,d,f B.a,c,f,e,b,d C.a,e,b,c,f,d D.a,e,d,f,c,b21、如下图所示带权无向图的最小生成树的权为()。

A.14 B.15 C.17 D.1822、以下排序方法中,不稳定的排序方法是()。

A.直接选择排序 B.二分法插入排序C.归并排序 D.基数排序23、下列哪一个选项不是下图所示有向图的拓扑排序结果()。

A.AFBCDE B.FABCDE C.FACBDE D.FADBCE24、参加排序的记录可以具有相同的关键码。

当一个排序方法在排序过程中不改变这种相同关键码记录的原始输入顺序时,称之为稳定的;反之称为不稳定的。

下面4种排序方法中,属于不稳定的排序方法是()。

A. 快速排序B. 冒泡排序C. 简单选择排序D. 折半插入排序25、链式存储设计时,结点内的存储单元地址()A. 一定连续B. 一定不连续C. 不一定连续D. 部分连续,部分不连续26、若一个栈的进栈序列是1,2,3,…,n,其输出序列是p1,p2,…,pn,若p1=n,则pi的值是()。

A. iB. n-iC. n-i+1D. 不确定27、以下有关二叉树的说法正确的是()。

A.二叉树的度为2 B.一棵二叉树的度可以小于2C.二叉树中至少有一个结点的度为2 D.二叉树中任一个结点的度均为228、一棵具有5 层的满二叉树所包含的结点个数为()。

A.15 B.31 C.63 D.3229、在关键字序列(12,23,34,45,56,67,78,89,91)中二分查找关键字为45、89 和 12的结点时,所需进行的比较次数分别为()。

A.4,4,3 B.4,3,3 C.3,4,4 D.3,3,430、一个序列中有 10000 个元素,若只想得到其中前 10 个最小元素,最好采用()方法。

A.快速排序 B.堆排序 C.插入排序 D.二路归并排序31.若将数据结构形式定义为二元组(K,R),其中K是数据元素的有限集合,则R是K上()A.操作的有限集合B.映象的有限集合C.类型的有限集合D.关系的有限集合32.在头指针为head且表长大于1的单循环链表中,指针p指向表中某个结点,若p->next->next=head,则()A.p指向头结点B.p指向尾结点C.*P的直接后继是尾结点D. *p的直接后继是头结点33.在具有n个结点的有序单链表中插入一个新结点并使链表仍然有序的时间复杂度是()A.O(1) B.O(n) C.O(nlogn) D.O(n2)34.队列和栈的主要区别是()A.逻辑结构不同 B.存储结构不同C.所包含的运算个数不同 D.限定插入和删除的位置不同35.若进栈序列为a,b,c,则通过入出栈操作可能得到的a,b,c的不同排列个数为() A.4 B.5 C.6 D.736.一棵含18个结点的二叉树的高度至少为( )A.3 B.4 C.5 D.637.在一个带权连通图G中,权值最小的边一定包含在G的()A.最小生成树中B.深度优先生成树中C.广度优先生成树中D.深度优先生成森林中二、填空题:1、树最适合用来表示具有()性和()性的数据。

2、设有一批数据元素,为了最快的存储某元素,数据结构宜用()结构,为了方便插入一个元素,数据结构宜用()结构。

3、在顺序表的()后面插入一个元素,不需要移动任何元素。

4、设循环队列的容量为40(),队头指针为front,队尾指针为rear;现经过一系列的入队和出队运算后,队头与队尾指针分别指向front=11,rear=19,则可求出循环队列中有()个元素。

5、哈夫曼树是带权路径长度()的二叉树,又称最优二叉树。

6、前序遍历和中序遍历结果相同的二叉树为();前序遍历和后序遍历结果相同的二叉树为()。

7、在一个长度为n的顺序表中删除第i个元素()时,需向前移动()个元素。

8、线性的数据结构包括:()、()、()和数组、串。

9、访问单向链表的节点,必须顺着()依次进行。

10、设计一个判别表达式中左,右括号是否配对出现的算法,采用()数据结构最佳。

11、数据结构涉及三个方面的内容,即( )、( )和( )。

12、具有4个顶点的无向完全图有( )条边。

三、判断对错题:1、二维数组是其数据元素为线性表的线性表。

()2、栈和链表是两种相同的数据结构。

()3、在中序线索二叉树中,每一非空的线索均指向其祖先结点。

()4、必须把一般树转换成二叉树后才能进行存储。

()5、健壮的算法不会因非法的输入数据而出现莫名其妙的状态。

()6、循环链表不是线性表。

()7、一棵哈夫曼树中不存在度为1的结点。

()8、线性表的逻辑顺序与存储顺序总是一致的。

()9、若有向图中存在拓扑序列,则该图不存在回路。

()10、有序表与数据的存储结构无关()11、单链表的存储密度小于1。

()12、执行广度优先遍历图时,需要使用队列作为辅助存储空间。

()13、把一棵树转换为二叉树后,这棵二叉树的形态是唯一的。

()14、在完全二叉树中,叶子结点的双亲的左兄弟(如果存在)一定不是叶子结点。

()15、数据的机内表示称为数据的存储结构。

()16、深度优先遍历类似于二叉树的先序遍历。

()17、某算法的时间复杂度为O(n2),表明该算法的问题规模是n2。

()18、一个顺序表所占用的存储空间大小与元素的类型无关。

()19、消除递归一定要使用栈。

()20、一个有n个顶点和n条边的无向图一定是有环的。

()21、调用一次深度优先遍历可以访问到图中的所有顶点。

()22、二叉树是一般树的特殊情形。

( )23、数据的逻辑结构是指数据在计算机内的实际存储形式。

( )24、归并排序要求内存量比较大。

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

( )26、对任何数据结构链式存储结构一定优于顺序存储结构。

( )27、拓扑排序是一种内部排序的算法。

()28、栈和队列的存储方式只能是链接方式。

()29、栈是实现过程和函数等子程序所必需的结构。

( )30、线性表在物理存储空间中也不一定是连续的。

( )四、综合应用题:(共40分)1、两个数据结构的逻辑结构和存储结构都相同,但是它们的运算集合中有一个运算的定义不一样,它们是否可以认作是同一个数据结构?为什么?2、已知一棵二叉树如右图所示,试求:(1)该二叉树前序、中序和后序遍历的结果;(2)该二叉树是否满二叉树?是否完全二叉树?(3)将它转换成对应的树或森林;(4)这棵二叉树的深度为多少?(5)试对该二叉树进行前(中、后)序线索化;3、如右图所示的是个无向图的邻接表,试:(1)画出此图;(2)从顶点A 开始的DFS 遍历结果;(3)从顶点A 开始的BFS 遍历结果。

4、分析下列语句执行次数,并给出它们的时间复杂度T(n)。

(1) i++;(2)for(i=0;i<n;i++)for(j=0;j<n;j++)printf(“%d”,i+j);5、分析下列语句的执行次数,并给出它们的时间复杂度T(n)。

(1) for(i=0;i<n;i++)if (a[i]<x) x=a[i];(2)for (i=1;i<=n-1;i++){ k=i;for(j=i+1;j<=n;j++)if(a[j]>a[j+1]) k=j;t=a[k]; a[k]=a[i]; a[i]=t;}6、分析下列语句的执行次数,并给出它们的时间复杂度T(n)。

相关文档
最新文档