内容正文:
3.2 数据与结构
学校:___________姓名:___________班级:___________考号:___________
一、选择题
1.在python中{}是用来创建( )
A.集合 B.列表 C.元组 D.字典
2.下列不是 Python 程序基本结构的是()。
A.顺序结构 B.树形结构 C.分支结构 D.循环结构
3.下列哪个算法不是基于比较的排序算法( )
A.冒泡排序 B.插入排序 C.选择排序 D.计数排序
4.图结构是由一组节点(称为顶点)和一组节点间的连线(称为边或弧)构成的一种数据结构。图结构中的每个顶点都可以与其他顶点有边相连,下列说法错误的是( )
A.图结构中数据元素之间是一对多的关系
B.图可以分为有向图和无向图
C.相连顶点之间的边或弧叫权,权表示两个节点之间的某种关系
D.图上的边或弧带权则称为网,可分为有向网和无向网
5.关于Python语言的浮点数类型,以下选项中描述错误的是( )
A.Python语言要求所有浮点数必须带有小数部分 B.浮点数类型与数学中实数的概念一致
C.小数部分不可以为0 D.浮点数类型表示带有小数的类型
6.Python的元组与列表类似,下列说法错误的是( )
A.元组的元素不能修改,元组中只包含一个元素时,需要在元素后面添加逗号
B.元组使用小括号,列表使用方括号
C.元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可
D.元组BookInfo1=("ID2315937",20,2),BookInfo1[2]=4用于修改元组BookInfo1[2]的值
7.如图所示的线性数据结构,下列说法错误的是( )
A.正向编号,首元素索引号为0,向后走,索引号递增
B.反向编号,尾元素编号为-1,向首元素方向依次递减
C.线性数据结构只包括队列与栈
D.栈:后进先出,添加和删除都在栈顶实现,队列:先进先出,删除在队首,添加在队尾
8.队列是一种有限制的( )结构。特点是数据元素只能在( )依次添加(称为[ ]), 在( )依次删除(称为[ ])。
A.线性;一端;进队;另一端;出队 B.线性;二端;进队;二端;出队
C.队列;一端;进队;另一端;出队 D.队列;二端;进队;二端;出队
9.已知一棵完全二叉树共有5个节点,前序遍历为ABCDE,下列说法正确的是( )
A.该二叉树的高度为3 B.该二叉树中只有1个度为2的节点
C.节点C的父节点是A D.该二叉树共有2个叶子节点
10.下列关于二叉树,说法不正确的是( )
A.用数组的方式存储二叉树,容易造成空间浪费
B.若有前序和中序遍历可以推导出一棵唯一的二叉树
C.只有最下面两层有叶子节点的二叉树称为完全二叉树
D.完全二叉树的第3层有3个叶子节点,则该树的节点数量可能是8
11.线性结构是数据元素之间存在一种( )关系
A.一对多 B.多对多 C.多对一 D.一对一
12.图结构中的每个顶点( )与其他顶点有边相连,数据元素之间是( )的关系。
A.都可以;一对多 B.都可以;多对多 C.不都可以;多对多 D.不都可以;一对多
13.列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型,创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。对列表BookInf=[1,2,4,6,7,5,1,9,6],下列错误的是( )
A.BookInf.append(10),列表添加了10元素
B.print(BookInf[-2]),输出:1
C.BookInf.remove(BookInf[6]),print(BookInf),输出:[2,4,6,7,5,1, 9,6]
D.del(BookInf[6]),print(BookInf),输出:[1,2,4,6,7,5,9,6]
14.线性结构数据之间的关系是( )
A.一对一 B.多对多 C.一对多 D.多对一
15.有一种元素除首元素没有前驱元素、尾元素没有后继元素外,其它元素都只有一个前驱元素和一个后继元素。具有以上特点的数据结构是( )
A.树结构 B.选择结构 C.线性结构 D.网状结构
16.除了首元素没有前趋元素,尾元素没有后续元素外其他所有元素都只有一个前趋元素和后续元素,这种数据结构属于( )
A.树结构 B.图结构 C.线性结构 D.集合结构
17.数据结构也称逻辑结构,以下不是数据结构的是( )
A.集合结构 B.线性结构 C.网状结构 D.顺序结构
18.关于数据结构的描述,以下选项中错误的是( )
A.数据结构指相互有关联的数据元素的集合
B.数据的存储结构有顺序存储、链接存储、索引存储和散列存储
C.数据结构不可以直观地用图形表示
D.数据的逻辑结构主要有集合结构、线性结构、树结构和图结构四种类型
19.在单向链表如下图所示,在data2与data3之间插入一个新节点data4(p指向data2,r指向data4。列表data来记录链表数据域,列表next来记录指针域),在以下选项中选择正确的执行步骤( )
①next[p]= next[r] ②next[p]= r ③next[r]= p
④next[r]= -1 ⑤next[r]= next[p] ⑥next[p]= -1
A.③⑥ B.⑤② C.①④ D.⑤②④
20.图结构的主要特点是( )
A.数据元素之间是一对一的关系 B.数据元素之间是一对多的关系
C.数据元素之间是多对多的关系 D.数据元素之间没有固定关系
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.AD
【详解】本题考查Python程序设计相关内容。列表用方括号“[]”来定义,元组可以用圆括号“()”来定义,集合可以用大括号“{}”来定义,字典用大括号“{}”来定义,故本题答案是AD选项。
2.B
【详解】本题考查Python相关知识。程序基本结构的是顺序结构,分支结构和循环结构。选项B不是程序基本结构,这是一种数据结构。
3.D
【详解】本题考查排序算法。冒泡排序、插入排序和选择排序都是基于比较的排序算法,它们通过比较元素之间的大小来决定元素的顺序。而计数排序是一种非比较排序算法,它通过计数数组中元素出现的次数来确定元素的位置,从而进行排序。故答案为D选项。
4.A
【详解】本题主要考查图结构。图结构中数据元素之间是多对多的关系;图可以分为有向图和无向图;相连顶点之间的边或弧叫权,权表示两个节点之间的某种关系;图上的边或弧带权则称为网,可分为有向网和无向网,故本题选A选项。
5.C
【详解】本题考查浮点数。Python中的浮点数小数部分可以为0,如1.0。故选项C错误。其它选项正确。故正确答案为选项C。
6.D
【详解】本题考查元组。元组的元素是不可修改的,因此 BookInfo1[2]=4是错误的,无法修改元组元素的值。其它选项正确。故正确答案为选项D。
7.C
【详解】本题主要考查数据结构。正向编号,首元素索引号为0,向后走,索引号递增;反向编号,尾元素编号为-1,向首元素方向依次递减;线性数据结构包括队列、栈、线性表及数组等;栈:后进先出,添加和删除都在栈顶实现,队列:先进先出,删除在队首,添加在队尾,故本题选C选项。
8.A
【详解】本题主要考查队列数据结构。队列是一种有限制的线性结构。特点是数据元素只能在一端依次添加(称为[进队]), 在另一端依次删除(称为[出队 ]),故本题选A选项。
9.A
【详解】本题考查完全二叉树。B选项,该二叉树中2个度为2的节点。C选项,节点C的父节点是B。D选项,3个叶子节点。故正确选项A。
10.C
【详解】本题考查二叉树的存储、遍历及完全二叉树的相关内容。使用数组存储二叉树时,若为一般非完全二叉树,则需要添加一些并不存在的空节点,会造成存储空间的浪费,选项A说法正确;可以由前序、中序遍历序列或中序、后序遍历序列唯一确定一颗二叉树,选项B说法正确;完全二叉树的定义是一个深度为k的有n个节点的二叉树,对树中的节点按从上至下、从左到右的顺序进行编号,如果编号为i(1≤i≤n)的结点与满二叉树中编号为i的结点在二叉树中的位置相同。选项虽然明确最下面两层有叶子节点,但未明确所有叶子节点按照从上至下、从左到右的顺序排列,选项C说法错误;完全二叉树第3层为叶子节点,说明前两层为满二叉树,由此得出,该数叶子节点为8,选项D说法正确。故答案为C选项。
11.D
【详解】本题考查的是数据结构。线性结构是一个有序数据元素的集合。常用的线性结构有:线性表,栈,队列,双队列,串(一维数组)。线性结构是数据元素之间存在一种一对一关系,故本题应选D。
12.B
【详解】本题主要考查数据结构。图结构中的每个顶点都可以与其他顶点有边相连,数据元素之间是多对多的关系,故本题选B选项。
13.B
【详解】本题考查了Python列表的基本操作。BookInf.append(10)会在列表末尾添加元素10,A选项正确。print(BookInf[-2])会输出倒数第二个元素,即9,而不是1,B选项错误。BookInf.remove(BookInf[6])会移除列表中第6个元素,即第一个1,之后打印列表,输出为[2,4,6,7,5,1,9,6],C选项正确。del(BookInf[6])会删除列表中的第6个元素,即第一个1,之后打印列表,输出为[1,2,4,6,7,5,9,6],D选项正确。故答案为:B。
14.A
【详解】本题考查数据结构。线性数据结构就是数据元素之间是一对一的关系。故选A。
15.C
【详解】本题考查数据结构。线性结构是一个有序数据元素的集合。常用的线性结构有:线性表,栈,队列,双队列,串。除最后元素之外,其它数据元素均有唯一的后继,除第一元素之外,其它数据元素均有唯一的前驱。故本题选项C为正确选项。
16.C
【详解】本题主要考查数据结构的描述。线性结构的特点有:1.集合中必存在唯一的一个“第一个元素”;2.集合中必存在唯一的一个“最后的元素”;3.除最后元素之外,其它数据元素均有唯一的“后继”;4.除第一元素之外,其它数据元素均有唯一的“前驱”。故本题选C选项。
17.D
【详解】本题考查数据结构相关知识。数据结构也称逻辑结构,数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。集合结构,线性结构,网状结构都属于数据结构。选项D不属于数据结构,它是算法的结构。故本题选D。
18.C
【详解】本题主要考查数据结构。数据结构指相互有关联的数据元素的集合;数据的存储结构有顺序存储、链接存储、索引存储和散列存储;数据结构可以直观地用图形表示,如图结构等;数据的逻辑结构主要有集合结构、线性结构、树结构和图结构四种类型,故本题选C选项。
19.B
【详解】本题主要考查链表的操作。在data2与data3之间插入一个新节点data4,p指向data2,r指向data4,则正确的步骤是,先将r的next指针域指向p的next节点,其次更新p的next为r,故分别是:next[r]= next[p] 和next[p]= r ,故本题选B选项。
20.C
【详解】本题考查图结构的特点。图结构是一种数据结构,其中的数据元素(节点)之间可以有多对多的关系。这意味着一个节点可以与多个其他节点相连,而这些其他节点也可以与多个节点相连。因此,图结构的主要特点是数据元素之间是多对多的关系。选项C正确。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$