数据结构题集

合集下载

数据结构选择题集锦

数据结构选择题集锦

(B ) 1.通常所说的主机是指:( C ) 2.在计算机内部,一切信息的存取、处理和传送的形式是:A ) ACSII 码B ) BCD 码C )二进制D )十六进制( D ) 3.软件与程序的区别是:A ) 程序价格便宜、软件价格昂贵;B ) 程序是用户自己编写的,而软件是由厂家提供的;C ) 程序是用高级语言编写的,而软件是由机器语言编写的;D ) 软件是程序以及开发、使用和维护所需要的所有文档的总称,而程序只是软件的一部分。

( C ) 4.所谓“裸机”是指:A )单片机B )单板机操作系统的计算机(D ) 5.应用软件是指:A )所有能够使用的软件B )能被各应用单位共同使用的某种软件C )所有微机上都应使用的基本软件D )专门为某一应用目的而编制的软件(A ) 6. C 语言中的常量可分为整型常量、实型常量、字符型常量及(枚举)四种。

(A )符号常量 (B )长整型常量 (C ) 逻辑常量(D )二进制整数单项选择A) CPUB ) CPU 和内存C ) CPU 、内存与外存D ) CPU 、内存与硬盘C )不装备任何软件的计算机D )只装备 (C ) 7.编译程序的功能是:A )发现源程序中的语法错误 C )将源程序编译成目标程序 级语言程序(A ) 8.系统软件中最重要的是:A )操作系统B )语言处理系统管理系统(C ) 9.可移植性最好的计算机语言是:A )机器语言B )汇编语言B )改正源程序中的语法错误 D )将某一高级语言程序翻译成另一种C )工具软件D )数据库C )高级语言D )自然语言15•计算机算法必须具备输入、输出和 A)可行性、可移植性和可扩充性 C)确定性、有穷性和稳定性(C ) 16.数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称 之为:(A )存储结构(B )逻辑结构(C )顺序存储结构(D )链式存储结构(B ) 17•—个向量第一个元素的存储地址是 100,每个元素的长度为2,则第5个元素的地址是 _______(A ) 110( B ) 108( C ) 100( D ) 120 (A ) 18.在n 个结点的顺序表中,算法的时间复杂度是0 (1)的操作是:(A) 访问第i 个结点(K i < n )和求第i 个结点的直接前驱(2< i < n ) (B) 在第i 个结点后插入一个新结点(1< i < n ) (C) 删除第i 个结点(K i w n ) (D)将n 个结点从小到大排序(B ) 19.向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均 要移动_个元素(A ) 8( B ) 63.5( C ) 63( D ) 7(A ) 20.链接存储的存储结构所占存储空间:(A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针关系度方法10. 非线性结构是数据元素之间存在一种: A ) 一对多关系B )多对多关系11. 数据结构中,与所使用的计算机无关的是数据的 C)逻辑A)存储 B)物理 12.算法分析的目的是: A)找出数据结构的合理性 C) 分析算法的效率以求改进 13.算法分析的两个主要方面是: A)空间复杂性和时间复杂性 C) 可读性和文档性 14•计算机算法指的是: A)计算方法B)排序方法C )多对一关系D ) 一对_结构; D)物理和存储B) 研究算法中的输入和输出的关系 D)分析算法的易懂性和文档性B) 正确性和简明性D) 数据复杂性和程序复杂性C)解决问题的有限运算序列 D)调_等5个特性。

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

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

数据结构试题集(包含答案-完整版)数据结构试题集(包含答案-完整版)1. 单选题1) 数据结构是一种()。

a) 存储结构b) 算法c) 数据模型d) 网络答案:c) 数据模型解析:数据结构是一种用于组织和存储数据的方式,描述了数据之间的关系以及对数据的操作。

2) 以下哪种数据结构可以通过索引直接访问元素?a) 链表b) 队列c) 栈d) 数组答案:d) 数组解析:数组是一种线性数据结构,可以通过索引直接访问指定位置的元素。

2. 多选题1) 哪些数据结构属于非线性结构?()a) 队列b) 树c) 栈d) 图答案:b) 树d) 图解析:线性结构中的元素存在一对一的关系,非线性结构中的元素存在一对多或多对多的关系,树和图属于非线性结构。

2) 下列哪些操作可以在栈上进行?()a) 入栈b) 出栈c) 查找d) 删除答案:a) 入栈b) 出栈解析:栈是一种后进先出(LIFO)的数据结构,只能在栈顶进行插入和删除操作。

3. 简答题1) 请简要介绍线性表和非线性表。

答案:线性表是数据元素的一个有限序列,元素之间存在一对一的关系。

非线性表是指元素之间存在一对多或多对多的关系,如树和图。

2) 请解释什么是时间复杂度和空间复杂度。

答案:时间复杂度是衡量算法执行效率的度量,表示算法的运行时间随输入规模增长的速度。

空间复杂度是指算法执行过程中所需的存储空间随输入规模增长的速度。

4. 编程题题目:实现一个栈,包含push、pop和getMin三个操作,要求时间复杂度为O(1)。

答案:class MinStack:def __init__(self):self.stack = []self.min_stack = []def push(self, x):self.stack.append(x)if not self.min_stack or x <= self.min_stack[-1]:self.min_stack.append(x)def pop(self):if self.stack.pop() == self.min_stack[-1]:self.min_stack.pop()def getMin(self):return self.min_stack[-1]解析:在栈的基础上,使用一个辅助栈min_stack来记录当前栈中的最小值。

数据结构习题集和答案

数据结构习题集和答案

第1章绪论1、填空题1.常见的数据结构有集合,_线性__结构,__树形___结构,__图形__结构等四种。

2.常见的存储结构有__顺序存储_______结构,__链式存储____结构等两种。

3.数据的基本单位是_数据元素___,它在计算机中是作为一个整体来处理的。

4.数据结构中的结构是指数据间的逻辑关系,常见的结构可分为两大类,__线性结构____和__非线性结构___。

2、选择题1. 算法的计算量的大小称为计算的(B)。

A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于(C)A.问题的规模 B. 待处理数据的初态 C. A和B D. 以上都不对3.计算机算法指的是(1)(c),它必须具备(2)(B)这三个特性。

(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性4. 下面关于算法说法错误的是(D)A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的3、应用题1、给出以下算法的时间复杂度.void fun(int n){int i=1,k=100;while(i<n){k=k+1;i=i+2;}}时间复杂度为____O(n)_____。

2、给出以下算法的时间复杂度.void fun2(int n){int i=1,k=100;while(i<n){i=i*10;k=k+1;}}时间复杂度为____O(log n)___________。

第2章线性表1、填空题1. 线性表按照存储结构不同主要有两种实现方式,一种是__顺序_表,另一种是___链___表。

2.顺序表采用__随机___访问机制对数据元素进行访问。

3.若在单链表结点p的后面插入一个新的结点s,则其操作序列为:①____s->next=p->next_____________;②____p->next=s___________________;4.在单向链表中,若要删除某个结点p,一般要找到__p的前趋__结点,才能实现该操作。

数据结构试题集(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,试画出该二叉树形状,并写出它的后序遍历序列。

数据结构期末考试(题集)

数据结构期末考试(题集)

数据结构的基本概念选择题(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)以下关于链接存储结构的叙述中,()是不正确的。

数据结构综合习题集(含答案)

数据结构综合习题集(含答案)

数据结构习题集一、选择题1.数据结构中所定义的数据元素,是用于表示数据的。

(C)A.最小单位B.最大单位C.基本单位D.不可分割的单位2.从逻辑上可以把数据结构分为(C)A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构3.当待排序序列中记录数较少或基本有序时,最适合的排序方法为(A )A.直接插入排序法B.快速排序法C.堆排序法D.归并排序法4.关于串的的叙述,不正确的是( B)A.串是字符的有限序列B.空串是由空格构成的串C.替换是串的一种重要运算D.串既可以采用顺序存储,也可以采用链式存储5.带表头结点链队列的队头和队尾指针分别为front和rear,则判断队空的条件为(A )A.front==rear B.front!=NULL C.rear!=NULL D.front==NULL6.若构造一棵具有n个结点的二叉排序树,最坏的情况下其深度不会超过(B)A.n/2B.nC.(n+1)/2D.n+17.将两个各有n个元素的有序表合并成一个有序表,其最少的比较次数为(A)A.nB.2n-1C.2nD.n28.设顺序表有19个元素,第一个元素的地址为200,且每个元素占3个字节,则第14个元素的存储地址为(B )A.236B.239C.242D.2459.一个栈的入栈序列是a,b,c,d,e,则栈的输出序列不可能是(A )A.dceabB.decbaC.edcbaD.abcde10.元素大小为1个单元,容量为n个单元的非空顺序栈中,以地址高端为栈底,以top作为栈顶指针,则出栈处理后,top的值应修改为(D )A.top=topB.top=n-1C.top=top-1D.top=top+111.设有一个10阶的对称矩阵A,采用压缩存储方式以行序为主序存储,a00为第一个元素,其存储地址为0,每个元素占有1个存储地址空间,则a45的地址为(B)A.13B.35C.17D.3612.栈和队列( C )A.共同之处在于二者都是先进先出的特殊的线性表B.共同之处在于二者都是先进后出的特殊的线性表C.共同之处在于二者都只允许在顶端执行删除操作D.没有共同之处13.含有n个结点的二叉树用二叉链表表示时,空指针域个数为(C )A.n-1B.nC.n+1D.n+214.对一棵有100个结点的完全二叉树按层序编号,则编号为49的结点,它的左孩子的编号为(B)A.99B.98C.97D.5015.在一个图中,所有顶点的度数之和与图的边数的比是( C)A.1∶2B.1∶1C.2∶1D.4∶116.在一个具有n个顶点的无向图中,要连通全部顶点至少需要的边数为(A )A.n-1B.nC.n+1D.n/217.在一个具有n个顶点的无向图中,每个顶点度的最大值为( B )A.nB.n-1C.n+1D.2(n-1)18.若采用邻接表存储结构,则图的广度优先搜索类似于二叉树的(D)A.先序遍历B.中序遍历C.后序遍历D.层次遍历19.对线性表进行二分查找时,要求线性表必须( C)A.以顺序方式存储B.以链式方式存储C.以顺序方式存储,且结点按关键字有序排列D.以链接方式存储,且结点按关键字有序排列20.二分查找算法的时间复杂度是(D)A.O(n2)B.O(nlog2n)C.O(n)D.O(log2n)21.采用排序算法对n个元素进行排序,其排序趟数肯定为n-1趟的排序方法是(C)A.插入和快速B.冒泡和快速C.选择和插入D.选择和冒泡22. 闭散列表中由于散列到同一个地址而引起的“堆积”现象,是( B)A.由同义词之间发生冲突引起的B.由非同义词之间发生冲突引起的C.由同义词之间或非同义词之间发生冲突引起的D.由散列表“溢出”引起的23.在对查找表的查找过程中,若被查找的数据元素不存在,则把该数据元素插入到集合中。

数据结构习题集

数据结构习题集

数据结构习题集第一章绪论1.1数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的关系和运算等的学科。

1.2 算法分析的目的是分析算法的效率以求该进,算法分析的两个主要方面是空间复杂度和时间复杂度。

1.3 计算机算法指的是解决问题的有限运算序列,它必须具备输入、输出和确定性、有穷性和可行性等5个重要特性。

第二章线性表2.32 下面关于线性表的叙述中,错误的是(B)A. 线性表采用顺序存储必须占用一片连续的存储单元B. 线性表采用顺序存储便于进行插入和删除操作C. 线性表采用链式存储不必占用一片连续的存储单元D. 线性表采用链式存储便于进行插入和删除操作第三章栈与队列一、选择题3.1 栈的特点是先进后出,队列的特点是先进先出。

3.4 判定一个栈ST(最多元素MaxSize)为空的条件是ST->top==-1。

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

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

3.18 若进栈序列为 1,2,3,4,,进栈过程中可以出栈,则以下不可能的出栈序列是3,1,4,23.1 栈和队列的区别仅在于____。

3.2 通常元素进栈的操作是____。

3.3通常元素退栈的操作是____。

3.4一个栈的输入序列是12345,则栈的输出序列43512是____。

3.5一个栈的输入序列是12345,则栈的输出序列12345是____。

第四章串4.1串是一种特殊的线形表,其特殊性体现在___B_A. 可以顺序存储B. 数据元素是一个字符C. 可以链接存储D. 数据元素可以是多个字符4.2 串的两种最基本的存储方式是顺序和链式。

4.3两个串相等的充分必要条件是:长度相等且对应位置上的字符相等。

4.4 空串是____,其长度等于____.4.5 串的三种机内表示方法是________、________、和___________。

数据结构习题集(包含全部答案).

数据结构习题集(包含全部答案).

数据结构习题集(自编)第一章绪论一、选择题1.数据结构是一门研究非数值计算的程序设计问题中的操作对象以及它们之间的()和运算的学科。

A.结构B.关系 C.运算 D.算法2.在数据结构中,从逻辑上可以把数据结构分成()。

A.动态结构和静态结构 B.紧凑结构和非紧凑结构C.线性结构和非线性结构 D.逻辑结构和存储结构3.线性表的逻辑顺序和存储顺序总是一致的,这种说法()。

A.正确B.不正确 C.无法确定 D.以上答案都不对4.算法分析的目的是()。

A.找出算法的合理性 B.研究算法的输人与输出关系C.分析算法的有效性以求改进 D.分析算法的易懂性5. 算法的时间复杂度取决于()A.问题的规模B待处理数据的初态 C. A和B6.一个算法应该是()。

A.程序B.问题求解步骤的描述C.要满足五个基本特性 D.A和C.7. 下面关于算法说法错误的是()A.算法最终必须由计算机程序实现B.为解决某问题的算法与为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的8.以下与数据的存储结构无关的术语是()。

A.循环队列 B. 链表 C. 哈希表 D. 栈9.在下面的程序段中,对x的赋值语句的频度为()for(i=0;i<n;i++)for(j=0;j<n;j++)x=x+1;nA. 2n B.n C.n2 D.log210.以下数据结构中,()是非线性数据结构A.树 B.字符串 C.队列 D.栈11. 下列数据中,()是线性数据结构。

A.哈夫曼树 B.有向无环图 C. 二叉排序树 D. 栈12.以下属于逻辑结构的是()。

A.顺序表 B. 哈希表 C.有序表 D. 单链表二、填空题1、_______是信息的载体,是对客观事物的符号表示,它能够被计算机识别、存储、加工和处理,________是对能够有效的输人到计算机中并且能够被计算机处理的符号的总称。

(数据、数据)2、数据元素是数据的______,有些情况下也称为元素、结点、顶点、记录等。

数据结构_习题集

数据结构_习题集

习 题 3 一、选择题
1在栈顶一端可进行的全部操作是( C)。 A 插入 B 删除 C插入和删除 2 栈的特点是(B )。 A 先进先出 B 后进先出 3 顺序栈是空栈的条件是( A)。 A top==0 B top==1 C top== -1 C后进后出 D进栈 D不进一个栈,top表示栈顶指针,已知栈未满, 则x入栈时所执行的操作是( D)。 A a[--top]=x; B a[top--]=x C a[++top]=x D a[top++]=x 5 一个栈的入栈序列是a,b,c,d,e,则不可能的出栈序列是( B)。 A edcda B dceab C decba D abcde 6 经过下列栈的运算后EmptyStack(s)的值是(C )。 InitStack(s);Push(s,a);Push(s,b);Pop(s,x);Pop(s,x) ?????????? Aa Bb C1 D0
数据结构习题册 基 础 篇
习 题 1 一、选择题
1 计算机算法必须具备输入、输出、( B)等5个特性。 A 可行性、可移植性和可扩展性 B 可行性、确定性和有穷性 C 确定性、有穷性和稳定性 D 易读性、安全性和稳定性 2 在数据结构中,从逻辑上可以把数据结构分为(D) A 动态结构和静态结构 B 紧凑结构和非紧凑结构 C 内容结构和外部结构 D 线性结构和非线性结构 3 下面程序段的时间复杂性的量级为( D) For (i=1;i<=n;i++) For(j=1;j<=I;j++) For(k=1;k<=j;k++) x=x+1; A O(1) B O(n) C O(n2) D O(n3) 4 在数据结构中,与所使用的计算机无关的是数据的(A )结构 A 逻辑 B 存储 C 逻辑和存储 D 物理 5 数据结构在计算机中的表示是指(C ) A 数据的逻辑结构 B 数据结构 C 数据的存储结构 D 数据元素之间 的关系 6 下面(B )的时间复杂性最好,即执行时间最短。 A O(n) B O(logn) C O(nlogn) D O(n2) 7 下面程序段的时间复杂性的量级为(D )。 Int fun(int n){ I=1,s=1;

数据结构复习题集(下)

数据结构复习题集(下)

11.6 Show the BFS tree for the graph of Figure 11.26,starting at Vertex 1. 对于图11.26所示的图,给出其从顶点1开始的BFS树广度优先搜索树。 答案:
11.3(a)画出图11.26所示图的相邻矩阵 adjacency matrix 表示; (b)画出这个图的邻接表adjacency list表示; (c)如果每个指针需要4个字节,每个顶点的 标号占用两个字节,每条边的权需要两个字节,则 该图采用哪种表示方法需要的空间更多? (d)如果每个指针需要4个字节,每个顶点的标 号需要一个字节,每条边的权需要两个字节,那么 采用哪种表示方法需要的空间更多? (b) (a)
3.把找到的记录与它在线性表中的前一条记录交换位置,称为转置(transpose)
查找元素 D H H G H E G H G H E C E H G Result A A A A A A A A A A A A A A A A A B B B B B B B B B B B B B B B B D D D D D D D D D D D D D D D D B C C C C C C C C C C C E C E E E E D E F E E E E H E E E E E C E C H H H G H F F H H E H G H G H H H H C G G G H F G G G H G H G G G G G C C H G G F F F F F F F F F F F F F 查找次数 4 8 7 8 6 6 7 7 7 7 5 5 5 6 7 95
10.15假定有一个B+树,它的内部节点,可以存储多达100个子女,叶 节点可以存储多达15条记录,对于1,2,3,4,和5层B+树,能够存储的最 大记录数和最小记录数是多少?

《数据结构》习题集

《数据结构》习题集

《数据结构》习题集第一章序论思考题:1。

1简述下列术语:数据、数据元素、数据对象、数据结构、存储结构、数据类型、抽象数据类型作业题:1。

2设有数据结构(D,R),其中D={d1, d2, d3, d4}R={r1,r2}r1={<d1, d2〉,<d2,d3>,<d3,d4〉,〈d1, d4>,〈d4,d2>, 〈d4, d1〉}r2={(d1, d2),(d1,d3),(d1, d4),(d2, d4), (d2, d3)}试绘出其逻辑结构示意图。

1。

3设n是正整数。

试写出下列程序段中用记号“△”标注的语句的频度: (1)i=1; k=0;while(i〈=n-1){△k+=10*i;i++;}(2) i=1; k=0;do {△k+=10*i;i++;}while(i〈=n-1)(3)i=1; k=0;do {△k+ = 10*i; i++;}while(i==n);(4) i=1; j=0;while(i+j≤n) {△if(i〈j) i++;else j++;}(5) x=n; y=0; //n是不小于1的常数while(x〉=(y+1)*(y+1)){△y++;}(6)x=91; y=100;while ( y>0 ){△if(x>100) { x—=10; y——; }else x++ ;}(7) for( i=0; i〈n; i++)for( j=i; j〈n; j++)for( k=j; k〈n; k++)△x+=2;1。

4 试写一算法,自大至小依次输出顺序读入的三个整数X,Y和Z的值。

1.5 已知k阶斐波那契序列的定义为:f0=0,f1=0,……,f k—2=0,f k—1=1;f n=f n—1+f n-2+……+f n-k, n=k,k+1,……试编写求k阶斐波那契序列的第m项值的函数算法,k和m均以值调用的形式在函数参数表中出现。

数据结构题集及答案

数据结构题集及答案

判断题1.数据的逻辑结构与数据元素本身的内容和形式无关.(√)2.一个数据结构是由一个逻辑结构和这个逻辑结构上的一个基本运算集构成的整体。

(√)3.数据元素是数据的最小单位.(√)4.数据的逻辑结构和数据的存储结构是相同的。

(×)5.程序和算法原则上是没有区别的,所以在讨论数据结构时可以通用.(×)6.从逻辑关系上讲,数据结构主要分为线性结构和非线性结构。

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

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

(√)9.数据的逻辑结构是依赖于计算机的.(×)10.算法是对解题方法和的描述步骤。

(√)填空题:1.数据有逻辑结构和存储结构两种结构。

2.数据逻辑结构除了集合以外,还包括线性结构、树形结构和图形结构。

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

4.树形结构和图形结构合称为非线性结构.5.在树形结构中,除了树根结点以外,其余每个结点只有 1 个前驱结点。

6.在图形结构中,每个结点的前驱结点数和后继结点数可以任意多个。

7.数据的存储结构又叫物理结构。

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

9.线性结构中的元素之间存在一对一的关系。

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

11.图形结构的元素之间存在多对多的关系。

12.数据结构主要研究数据的逻辑结构、存储结构和算法(或运算)3个方面的内容.13.数据结构被定义为(D,R),其中D是数据的有限集合,R是D上的关系的有限集合。

14.算法是一个有穷指令的集合。

15.算法效率的度量可以分为事先估算和事后统计法。

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

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

数据结构课程习题集第1页共25页

数据结构课程习题集第1页共25页

《数据结构》课程习题集第 1 页(共 25 页)一、. 选择题. 1. 算法的计算量的大小称为计算的()。

A.效率 B. 复杂性 C. 现实性 D. 难度.2. 算法的时间复杂度取决于().A.问题的规模 B. 待处理数据的初态 C. A和B 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. 设一个栈的输入序列是 1,2,3,4,5,则下列序列中,是栈的合法输出序列的是()。

A. 5 1 2 3 4B. 4 5 1 3 2C. 4 3 1 2 5D. 3 2 1 5 4.12. 某堆栈的输入序列为a, b,c ,d,下面的四个序列中,不可能是它的输出序列的是()。

数据结构题集答案

数据结构题集答案

数据结构题集第一章绪论一、单选题1.在数据结构中,从逻辑上可以把数据结构分成【C 】。

A。

动态结构和静态结构B。

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

A.数据的存储结构B.数据结构C。

数据结构的逻辑结构 D.数据元素之间的关系3. 【A 】是数据的最小单位,【B 】是数据的基本单位。

A。

数据项B。

数据元素C.信息项D.表元素4。

计算机所处理数据一般具有某种内在联系,这是指【B 】.A.数据与数据之间存在某种关系B.数据元素与数据元素之间存在某种关系C.元素内部存在某种结构D.数据项与数据项之间存在某种关系5。

算法分析的目的是【C 】.A.找出数据结构的合理性B.研究输入和输出的关系C.分析算法的效率以求改进D。

分析算法的易懂性6。

在存储数据时,不仅要考虑存储各数据元素的值,而且还要存储【C 】。

A。

数据处理的方法B。

数据元素的类型C.数据元素之间的关系D。

数据的存储方法7.算法分析的主要任务是分析【D 】。

A.算法是否具有较好的可读性B。

算法中是否存储语法错误和逻辑错误C.算法的功能是否符合设计要求D.算法的执行时间与问题规模之间的关系。

8.数据的运算【A 】。

A.效率与采用何种存储结构有关B.是根据存储结构来定义的C.有算术运算和关系运算两大类D。

必须用程序设计语言来描述9.算法的计算量的大小称为算法的【B 】。

A.效率B。

时间复杂度 C.现实性 D.难度10.连续存储分配时,存储单元的地址【A 】。

A.一定连续B。

一定不连续C。

不一定连续 D.部分连续,部分不连续二、判断题1。

数据元素是数据结构的最小单位【.×】。

2。

数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的存储结构【×。

】.3.数据的逻辑结构指数据元素的各数据项之间的逻辑关系【×。

】。

4。

算法的优劣与算法的描述语言无关,但与使用的计算机有关【。

经典数据结构习题集含答案

经典数据结构习题集含答案

线性表1.下列有关线性表的叙述中,正确的是(A)。

A)线性表中元素之间的关系是线性关系B)线性表中至少有一个元素C)线性表中的任一元素有且仅有一个直接前趋D)线性表中的任一元素有且仅有一个直接后继2.下述哪一条是顺序存储结构的优点?(A)A)存储密度大B)插入方便C)删除方便D)可方便地用于各种逻辑结构的存储表示3.在一个长度为n的顺序表中,在第i个元素(1<=i<=n)之前插入一个新元素时需向后移动(D)个元素。

A)1 B)n-i C)n-i-1 D)n-i+14.如果某线性表中最常用的操作是取第i个元素和找第i个元素的前驱,那么采用(A)存储方式最节省时间。

A)顺序表B)单链表C)双链表D)循环链表5.对顺序存储的线性表,设其长度为n,且在任何位置上插入或删除操作都是等概率的。

则插入一个元素时平均要移动表中的(A)个元素。

A)n/2 B)(n+1)/2 C)(n-1)/2 D)n6.下述哪一条是顺序存储结构的缺点?(C)A)存储密度太大B)随机存取C)一般要估计最大的需要空间D)只能应用于少数几种逻辑结构的存储表示7.在单链表中,增加头结点的目的是(C)。

A)使单链表至少有一个结点B)标志表中首结点的位置C)方便运算的实现D)说明单链表是线性表的链式存储表示8.单链表不具有的特点是(A)。

A)可随机访问任一元素B)插入和删除不需要移动元素C)不必事先估计存储空间D)所需空间和线性表长度成正比9.循环链表的主要优点是(D)。

A)不再需要头指针了B)已知某个结点的位置后,能够容易找到他的直接前趋C)在进行插入、删除运算时,能更好的保证链表不断开D)从表中的任意结点出发都能扫描到整个链表10.链表对于数据元素的插入与删除是(B)。

A)不需移动结点,不需改变结点指针B)不需移动结点,只需改变结点指针C)只需移动结点,不需改变结点指针D)既需移动结点,又需改变结点指针11.在一个单链表中,已知q所指结点是p所指结点的前驱结点,若要在q 和p 所指结点之间插入s所指的结点,则执行(B)。

数据结构试题库集及答案

数据结构试题库集及答案

数据结构试题库及答案第一章概论一、选择题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、下面程序段的时间复杂度是()。

i=s=0;while(s<n){i++;s+=i;}A. O(n)B. O(n2)C. O(log2n)D. O(n3)11、抽象数据类型的三个组成部分分别为()。

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

数据结构习题集和答案

数据结构习题集和答案

第1章绪论1、填空题1.常见的数据结构有集合,_线性__结构,__树形___结构,__图形__结构等四种。

2.常见的存储结构有__顺序存储_______结构,__链式存储____结构等两种。

3.数据的基本单位是_数据元素___,它在计算机中是作为一个整体来处理的。

4.数据结构中的结构是指数据间的逻辑关系,常见的结构可分为两大类,__线性结构____和__非线性结构___。

2、选择题1. 算法的计算量的大小称为计算的(B)。

A.效率 B. 复杂性 C. 现实性D. 难度2. 算法的时间复杂度取决于(C)A.问题的规模 B. 待处理数据的初态 C. A和B D. 以上都不对3.计算机算法指的是(1)(c),它必须具备(2)(B)这三个特性。

(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性4. 下面关于算法说法错误的是(D)A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的3、应用题1、给出以下算法的时间复杂度.void fun(int n){int i=1,k=100;while(i<n){k=k+1;i=i+2;}}时间复杂度为____O(n)_____。

2、给出以下算法的时间复杂度.void fun2(int n){int i=1,k=100;while(i<n){i=i*10;k=k+1;}}时间复杂度为____O(log n)___________。

第2章线性表1、填空题1. 线性表按照存储结构不同主要有两种实现方式,一种是__顺序_表,另一种是___链___表。

2.顺序表采用__随机___访问机制对数据元素进行访问。

3.若在单链表结点p的后面插入一个新的结点s,则其操作序列为:①____s->next=p->next_____________;②____p->next=s___________________;4.在单向链表中,若要删除某个结点p,一般要找到__p的前趋__结点,才能实现该操作。

数据结构习题集(2022)

数据结构习题集(2022)

数据结构习题集(2022)第一章绪论1.下面是几种数据的逻辑结构S=(D,R),分别画出对应的数据逻辑结构,并指出它们分别属于何种结构。

D={a,b,c,d,e,f}R={r}(a)r={,,,,}(b)r={,,,,}(c)r={,,,,}2.分析下列程序段的时间复杂度(a)for(i=0;ifor(j=0;jfor(i=0;ifor(j=0;jWhile(i3.在数据结构中,与所使用的计算机无关的是A.存储结构B.物理结构C.物理和存储结构D.逻辑结构4.非线性结构中每个结点A.无直接前驱结点B.只有一个直接前驱和直接后继结点C.无直接后继结点D.可能有多个直接前驱和多个直接后继结点5.可以把数据的逻辑结构划分成A.内部结构和外部结构B.动态结构和静态结构C.紧凑结构和非紧凑结构D.线性结构和非线性结构6.算法的时间复杂度取决于()。

A.问题的规模B.待处理数据的初态C.A和B7.计算机算法指的是(),它必须具备()这三个特性。

(1)A.计算方法B.排序方法C.解决问题的步骤序列D.调度方法(2)A.可执行性、可移植性、可扩充性B.可执行性、确定性、有穷性C.确定性、有穷性、稳定性D.易读性、稳定性、安全性第二章线性表一、单项选择题1.下面关于线性表叙述中,错误的是_(1)_。

(1):A.顺序表必须占用一片地址连续的存储单元B.链表不必占用一片地址连续的存储单元C.顺序表可以随机存取任一元素D.链表可以随机存取任一元素2.在表长为n的单链表中,算法时间复杂度为O(n)的操作是(2)。

(2):A.查找单链表中第i个结点B.在p结点之后插入一个结点C.删除表中第一个结点D.删除p结点的直接后继结点3.单链表的存储密度(3)(3):A.大于1B.等于1C.小于1D.不能确定4.在表长为n的顺序表中,算法的时间复杂度为O(1)的操作是(4)(4):A.在第n个结点之后插入一个结点B.在第i个结点前插入一个新结点C.删除第i个结点D.求表长5.在下列链表中不能从当前结点出发访问到其余各结点的是(5)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选择一项:
a. ABCD
b. DCBA
c. ACDB
d. DABC
反馈
correct feedback
正确答案是:DABC
正确
此次提交得分:1.00/1.00。
题目19
正确
获得1.00分中的1.00分
标记题目
题干
将递归算法转变成对应非递归算法时,需要使用( )保存中间结果。
选择一项:
a.二叉树
b.队列
反馈
正确的答案是“对”。
正确
此次提交得分:1.00/1.00。
题目26
正确
获得1.00分中的1.00分
标记题目
题干
已知一个栈的进栈序列是ABC,出栈序列是CBA,经过的栈操作是___。
选择一项:
a. push,pop,push,pop,push,pop
b. push,push,pop,pop,push,pop
选择一项:
a. b,c,a,e,f,d
b. a,f,e,d,c,b
c. d,c,e,b,f,a
d. c,b,d,a,e,f
反馈
correct feedback
正确答案是:a,f,e,d,c,b
正确
此次提交得分:1.00/1.00。
题目3
正确
获得1.00分中的1.00分
标记题目
题干
假设栈初始为空,将中缀表达式a/b+(c*d-e*f)/g转换为等价的后缀表达式的过程中,当扫描到f时,栈中的元素依次是()。
反馈
correct feedback
正确答案是:3 4 6 5 2 1
正确
此次提交得分:1.00/1.00。
题目12
正确
获得1.00分中的1.00分
标记题目
题干
递归过程或函数调用时,处理参数及返回地址,要用一种称为()的数据结构
选择一项:
a.线性表
b.队列
c.栈
d.多维数组
反馈
correct feedback
题目16
正确
获得1.00分中的1.00分
标记题目
题干
任何一个递归过程都可以转换成非递归过程。( )
选择一项:

错反馈Leabharlann 正确的答案是“对”。正确
此次提交得分:1.00/1.00。
题目17
正确
获得1.00分中的1.00分
标记题目
题干
如进栈序列1,2,3,4,5可能得到的出栈序列为()
选择一项:
a. 1,2,5,3,4
选择一项:
a. a
b. 0
c. b
d. 1
反馈
correct feedback
正确答案是:a
正确
此次提交得分:1.00/1.00。
题目31
正确
获得1.00分中的1.00分
标记题目
题干
向一个不带头结点的栈顶指针为lst的链栈中插入一个s所指结点是,则执行______。
选择一项:
a. s->next=lst;lst=s
标记题目
题干
若一个栈以向量[1..n]存储,初始栈顶指针top为n+1,则下面x进栈的正确操作是( )
选择一项:
d. x=lst->data;
反馈
correct feedback
正确答案是:x=lst->data;lst=lst->next
正确
此次提交得分:1.00/1.00。
题目22
正确
获得1.00分中的1.00分
标记题目
题干
依次读入数据元素序列{a,b,c,d,e,f,g}进栈,每进一个元素,机器可要求下一个元素进栈或弹栈,如此进行,则栈空时弹出的元素构成的序列是以下哪些序列?()
d. ABCDEFG+*-/-*
反馈
correct feedback
正确答案是:AB+CD-*EFG*-/
正确
此次提交得分:1.00/1.00。
题目30
正确
获得1.00分中的1.00分
标记题目
题干
经过以下栈运算后,x的值是______。InitStack(S);Push(S,a);Push(S,b);Pop(S,x);GetTop(S.x);
c. 4,1,3,2
d. 1,4,3,2
反馈
correct feedback
正确答案是:4,1,3,2
正确
此次提交得分:1.00/1.00。
题目9
正确
获得1.00分中的1.00分
标记题目
题干
已知操作符包括’+’,’-’,’*,’/’(’和’)’。将中缀表达式a+b-a*((c+d)/e-f)+g转换为等价的后缀表达式ab+acd+e/f-*-g+时,用栈来存放暂时还不能确定运算次序的操作符。若栈初始为空,则转换过程中同时保存在栈中的操作符的最大个数是( )。
选择一项或多项:
a. {f,e,g,d,a,c,b}
b. {e,f,d,g,b,c,a}
c. {d,e,c,f,b,g,a}
d. {c,d,b,e,f,a,g}
反馈
correct feedback
正确答案是:{d,e,c,f,b,g,a}, {c,d,b,e,f,a,g}
正确
此次提交得分:1.00/1.00。
b. lst->next=s
c. s->next=lst->next;lst->next=s
d. s->next=lst;lst=lst->next
反馈
correct feedback
正确答案是:s->next=lst;lst=s
正确
此次提交得分:1.00/1.00。
题目32
正确
获得1.00分中的1.00分
反馈
correct feedback
正确答案是:(A-B)*C-D
正确
此次提交得分:1.00/1.00。
题目14
正确
获得1.00分中的1.00分
标记题目
题干
若已知一个栈的入栈序列是1,2,3,4,其出栈序列为p1,p2,p3,p4,则p2,p4可能为()
选择一项或多项:
a. 2,4
b. 2,1
c. 3,4
题目1
正确
获得1.00分中的1.00分
标记题目
题干
中缀表达式:(a+b)*d+e/(f+a*d)+c的后缀表达式为:ab+d*efad+/*+c+ ( )
选择一项:


反馈
正确的答案是“错”。
正确
此次提交得分:1.00/1.00。
题目2
正确
获得1.00分中的1.00分
标记题目
题干
若元素a,b,c,d,e,f依次进栈,允许进栈、退栈操作交替进行,但不允许连续三次进行退栈操作,则不可能得到的出栈序列是()
选择一项:
a. i
b. n-i+1
c.有多种可能
d. n-i
反馈
correct feedback
正确答案是:n-i+1
正确
此次提交得分:1.00/1.00。
题目8
正确
获得1.00分中的1.00分
标记题目
题干
四个元素1,2,3,4依次进栈,出栈的次序不可能出现()中情况
选择一项:
a. 1,2,3,4
b. 4,3,2,1
选择一项:


反馈
正确的答案是“错”。
正确
此次提交得分:1.00/1.00。
题目29
正确
获得1.00分中的1.00分
标记题目
题干
中缀表达式(A+B)*(C-D)/(E-F*G)的后缀表达式是()
选择一项:
a. AB+CD-*EFG*-/
b. A+B*C-D/E-F*G
c. AB+C*D-E/F-G*
d. 4,3
反馈
correct feedback
正确答案是:2,4, 2,1, 3,4
正确
此次提交得分:1.00/1.00。
题目15
正确
获得1.00分中的1.00分
标记题目
题干
同一组不重复输入序列执行不同的入、出栈组合操作,所得结果也可能相同。( )
选择一项:


反馈
正确的答案是“错”。
正确
此次提交得分:1.00/1.00。
c. push,push,push,pop,pop,pop
d. push,pop,push,push,pop,pop
反馈
correct feedback
正确答案是:push,push,push,pop,pop,pop
正确
此次提交得分:1.00/1.00。
题目27
正确
获得1.00分中的1.00分
标记题目
选择一项:
a. -+*abcd
b. abcd*+-
c. abc*+d-
d. abc+*d-
反馈
correct feedback
正确答案是:abc+*d-
正确
此次提交得分:1.00/1.00。
题目25
正确
获得1.00分中的1.00分
标记题目
题干
栈是实现过程和函数等子程序所必需的结构。()
选择一项:


a.不可能是3
b.可能是2
相关文档
最新文档