数据结构练习题
一、单项选择题
1、以下数据结构中哪一个是非线性结构?(C)
A. 队列 B. 栈 C. 二叉树 D. 线性表
线性结构:向量 列表 堆栈 队列
非线性结构: 树形 图形
2、栈中元素的进出原则是(B )
A. 先进先出 B. 后进先出 C. 栈空则进 D. 栈满则出
3、队列中元素的进出原则是( A )
二叉树公式A. 先进先出 B. 后进先出 C. 队空则进 D. 队满则出
4、从逻辑上可以把数据结构分为(C)两大类。
A.动态结构、静态结构 B.顺序结构、链式结构
C.线性结构、非线性结构 D.初等结构、构造性结构
5、在一颗二叉树上第三层的节点数最多为( B )。
A.2 B.4 C.6 D.8
6、由权值分别为11,8,6,2,5的叶子结点生成一颗哈夫曼树,它的带权路径长度为(A )。
A.71 B.23 C.48 D.53
7、串是一种特殊的线性表,其特殊性体现在( B )。
A.可以顺序存储 B.数据元素是一个字符
C.可以链式存储 D.数据元素可以是多个字符
8、( B?? )遍历方法在遍历它的左子树和右子树后再遍历它自身。
A.先序遍历 B. 后序遍历
C. 中序遍历 D. 层次遍历
9、判断一个循环队列( m0为最大队列长度(以元素为单位),front和rear分别为队列的队头指针和队尾指针,则为满队列的条件是( C )。
A. front== rear B.front!= rear
C. front==( rear+1) % m0 D. front!=( rear+1) % m0
10、设有6个结点的无向图,该图至少应有( A )条边才能确保是一个连通图。
A.5 B.6 C.7 D.8
11、下列说法正确的是(A)
A.数据是数据元素的基本单位
B.数据元素是数据项中不可分割的最小标识单位
C.数据可由若干个数据元素构成
D.数据项可由若干个数据元素构成
12、在以下的叙述中,正确的是(B)。
A.线性表的顺序存储结构优于链表存储结构
B.二维数组是其数据元素为线性表的线性表
C.栈的操作方式是先进先出
D.队列的操作方式是先进后出
13、与单链表相比,双链表的优点之一是( D)。
A.插入、删除操作更简单 B.可以进行随机访问
C.可以省略表头指针或表尾指针 D.顺序访问相邻结点更灵活
14、下面关于线性表的叙述中,错误的是哪一个?(B )。
A.线性表采用顺序存储,必须占用一片连续的存储单元
B.线性表采用顺序存储,便于进行插入和删除操作。
C.线性表采用链式存储,不必占用一片连续的存储单元
D.线性表采用链式存储,便于进行插入和删除操作。
A. 顺序存储占用连续空间,就像数组一样。
B. 顺序存储的时候,插入和删除需要移动插入和删除点后面的数据。不方便。
C. 链接存储不需连续空间,就像LinkedList的实现一样,一个结点的next指针指向下一个元素的位置。
D.链接存储时,插入和删除只需要修改指针的指向结点即可。
15、在循环队列中,若front与rear 分别表示对头元素和队尾元素的位置,则判断循环队列空的条件是( C )。
A.front==rear+1 B.rear==front+1
C.front==rear D.front==0
16、对于循环队列(D )。
A.无法判断队列是否为空 B.无法判断队列是否为满
C.队列不可能满 D.以上说法都不对
17、串的长度是指(B )。
A.串中所含不同字母的个数 B.串中所含字符的个数
C.串中所含不同字符的个数 D.串中所含非空格字符的个数
18、深度为5的二叉树至多有( C )个结点。
A.16 B. 32 C.31 C. 10
19、在下述论述中,正确的是( D )。
①只有一个结点的二叉树的度为0;②二叉树的度为2;③二叉树的左右子树可任意交换;④深度为K的顺序二叉树的结点个数小于或等于深度相同的满二叉树。
A.①②③ B.②③④ C.②④ D.①④
20、采用邻接表存储的图的深度优先遍历算法类似于二叉树的(A )。
A.先序遍历 B.中序遍历 C.后序遍历 D.按层遍历
这是因为图的深度优先遍历算法先访问所在结点,再访问它的邻接点。与二叉树的先序遍历先访问子树的根结点,再访问它的孩子结点(邻接点)类似。图的广度优先遍历算法类似于二叉树的按层次遍历。
二、判断题
1、顺序存储方式插入和删除时效率太低,因此它不如链式存储方式好。 ( f )
2、线性表采用链式存储结构时,结点和结点内部的存储空间可以是不连续的。( f )
3、对任何数据结构链式存储结构一定优于顺序存储结构。 ( f )
4、顺序存储方式只能用于存储线性结构。 ( f )
5、链表是采用链式存储结构的线性表,进行插入、删除操作时,在链表中比在顺序表中效率高。 ( t)
6、双向链表可随机访问任一结点。 ( f )
7、在哈夫曼树中,权值最小的结点离根结点最近。 ( f )
8、强连通图的各顶点间均可达。 ( t )
9、串是一种特殊的线性表,其特殊性体现在可以顺序存储。 ( f )
10、对于任意一个图,从它的某个结点进行一次深度或广度优先遍历可以访问到该图的每个顶点。 ( f )
11、StringBuilder是非线程安全,StringBuffer是线程安全的。 ( t )
12、链式存储结构是把数据元素存放在地址连续的存储单元里,借助元素(指针??)在存储器中的相对位置来表示数据元素之间逻辑关系。 ( f?? )
13、入栈和出栈操作只能在栈顶进行。 ( f )
14、串不是线性表。 ( f )
15、深度为5的二叉树至少有5个结点。 ( t )
16、子串 “str” 在主串 ”datastructure”中的位置是5(索引从1开始)。 ( t )
17、顺序存储结构是通过指针(结点物理上相邻)表示元素之间的关系的;链式存储结构是通过(结点指针)下标表示元素之间的关系的。 ( f )
18、具有10个顶点的无向图,边的总数最多为45。 ( t )
19、数据的逻辑结构分为集合、线性结构、树形结构和图状结构4种。 ( t )
20、数据元素是组成数据的基本单位,数据项是组成数据元素的基本单位。( t )
21、数据的逻辑结构是从逻辑的角度来观察数据,分析数据,与数据的存储位置无关。 ( t )
22、单链接表可以按双向遍历线性表中的每一个数据元素。 ( )
23、链表中删除和插入操作比顺序表快,但是元素的访问速度比顺序表要慢。( t )
24、栈的主要特点是“先进先出”,队列的主要特点是 “后进先出”。 ( f )
25、前序遍历是首先遍历根结点的左子树,再遍历根结点的右子树,最后访问根结点。 f
26、用链表表示线性表的优点是便于插入和删除。 ( t )
27、入栈和出栈操作只能在栈顶进行。 ( f )
28、串不是线性表。 ( f )
29、双链接表可以按双向遍历线性表中的每一个数据元素。 ( )
30、一个算法有至少一个或多个输出。 ( t )
31、二叉树的数据结构描述了数据之间网状关系。 ( t )
32、String是不可变字符串,StringBuffer是可变字符串。 ( t )
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论