软件技术基础试题库.docx
《软件技术基础试题库.docx》由会员分享,可在线阅读,更多相关《软件技术基础试题库.docx(66页珍藏版)》请在冰豆网上搜索。
软件技术基础试题库
《软件技术基础》试题库
课程名称:
软件技术基础
适用专业:
软件技术、计算机应用、网络、信息等计算机相关专业
第一章概述
第二章数据结构
一、单项选择题
1.若长度为n的线性表采用顺序存储结构,删除它的第i数据元素之前,需要先依次向前移动_______个数据元素。
()
A.n-i
B.n+i
C.n-i-1
D.n-i+1
答案:
A
2.在单链表中,已知q指的结点是p指的结点的直接前驱结点,若在q和p指的结点之间插入一个由s指的结点,则需执行________。
()
A.link(s)←link(p),link(p)←s
B.link(q)←s,link(s)←p
C.link(p)←link(s),link(s)←p
D.link(p)←s,link(s)←q
答案:
B
3.高度为h(h>0)的二叉树最少有________个结点。
()
A.h
B.h-1
C.h+1
D.2h
答案:
A
4.n个顶点的带权无向连通图的最小生成树包含________个顶点。
()
A.n-1
B.n
C.n/2
D.n+1
答案:
B
5.采用拉链法解决冲突的散列表中,查找的平均查找长度()。
A.直接与关键字个数有关
B.直接与装填因子a有关
C.直接与表的容量有关
D.直接与散列函数有关
答案:
D
6.树型结构最适合用来描述()
A.有序的数据元素
B.无序的数据元素
C.数据元素之间的具有层次关系的数据
D.数据元素之间没有关系的数据
答案:
C
7.若二叉树中度为2的结点有15个,度为1的结点有10个_______个叶结点。
()
A.25
B.10
C.16
D.41
答案:
C度0的结点比度2的结点多1
8.若深度为6的完全二叉树的第6层有3个叶结点,则该二叉树一共有______个结点。
()
A.32
B.33
C.34
D.25
答案:
C
9.若某完全二叉树的深度为h,则该完全二叉树中至少有______个结点。
()
A.2h
B.2h-1
C.2h-2
D.2h-1+1
答案:
C
10.在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该()
A.只有左子树上的所有结点
B.只有左子树上的部分结点
C.只有右子树上的所有结点
D.只有右子树上的部分结点
答案:
A
11.下面关于哈夫曼树的说法,不正确的是()
A.对应于一组权值构造出的哈夫曼树一般不是唯一的
B.哈夫曼树具有最小带权路径长度
C.哈夫曼树中没有度为1的结点
D.哈夫曼树中除了度为1的结点外,还有度为2的结点和叶结点
答案:
D
12.数据结构是一门研究计算机中对象及其关系的学科。
()
A.数值运算
B.非数值运算
C.集合
D.非集合
答案:
B
13.数据结构的定义为(K,R),其中K是的集合。
()
A.算法
B.数据元素
C.数据操作
D.逻辑结构
答案:
B
14.算法分析的目的是____。
()
A.找出数据结构的合理性
B.研究算法中输入和输出的关系
C.分析算法的效率以求改进
D.分析算法的易懂性和文档性
答案:
C
15.数据的不可分割的基本单位是。
()
A.元素
B.结点
C.数据类型
D.数据项
答案:
D
16.是具有相同特性数据元素的集合,是数据的子集。
()
A.数据符号
B.数据对象
C.数据
D.数据结构
答案:
B
17.数据结构是研究数据的及它们之间的相互联系。
( )
A.理想结构、物理结构
B.理想结构、逻辑结构
C.物理结构、逻辑结构
D.抽象结构、逻辑结构
答案:
C
18.组成数据的基本单位是。
( )
A.数据项
B.数据类型
C.数据元素
D.数据变量
答案:
C
19.数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称为。
( )
A.存储结构
B.逻辑结构
C.顺序存储结构
D.链式存储结构
答案:
C
20.算法指的是。
( )
A.计算机程序
B.解决问题的计算方法
C.排序算法
D.解决问题的有限运算序列
答案:
D
21.由____组成的集合是一个数据对象。
()
A.不同类型的数据项
B.不同类型的数据元素
C.相同类型的数据项
D.相同类型的数据元素
答案:
D
22.关于顺序存储的叙述中,哪一条是不正确的。
()
A.存储密度大
B.逻辑上相邻的节点物理上不必邻接
C.可以通过计算直接确定第i个节点的位置
D.插入、删除操作不方便
答案:
B
23.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是。
( )
A.110
B.108
C.100
D.120
答案:
B
24.已知一个顺序存储的线性表,设每个结点需要占m个存储单元,若第一个结点的地址为da,则第i个结点的地址为。
( )
A.da+(i-1)*m
B.da+i*m
C.da-i*m
D.da+(i+1)*m
答案:
A
25.链表是一种采用存储结构存储的线性表。
( )
A.顺序
B.链式
C.星式
D.网状
答案:
B
26.线性表若采用链式存储结构时,要求内存中可用存储单元的地址。
( )
A.必须是连续的
B.部分地址必须是连续的
C.一定是不连续的
D.连续或不连续都可以
答案:
D
27.线性表L在情况下适用于使用链式结构实现。
()
A.需经常修改L中的结点值
B.需不断对L进行删除插入
C.L中含有大量的结点
D.L中结点结构复杂
答案:
B
28.在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为。
( )
A.n-i+1
B.n-i
C.i
D.i-1
答案:
A
29.线性表是。
( )
A.一个有限系列,可以为空
B.一个有限系列,不能为空
C.一个无限系列,可以为空
D.一个无限系列,不能为空
答案:
A
30.____是线性表。
()
A.(孔子,诸葛亮,曹雪芹)
B.{A,B,C,D}
C.{10,11,12,13,14}
D.(1,2,3,...)
答案:
A
31.____是表示线性数据结构的。
()
A.循环链表
B.邻接多重表
C.孩子链表
D.单链表
答案:
D
32.将线性表的数据元素以____结构存放,查找一个数据元素所需时间不依赖于表长。
()
A.循环双链表
B.哈希(Hash)表
C.一维数组
D.单链表
答案:
C
33.在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行___。
()
A.s->link=p;p->link=s;
B.s->link=p->link;p->link=s;
C.s->link=p->link;p=s;
D.p->link=s;s->link=p;
答案:
34.在循环链表中first为指向链表表头的指针,current为链表当前指针,在循环链表中检测current是否达到链表表尾的语句是____。
()
A.current->link=NULL
B.first->link=current
C.first=current
D.current->link=first
答案:
35.从一个具有n个结点的单链表中查找其值等于x结点时,在查找成功的情况下,需平均比较____个结点。
()
A.N
B.n/2
C.(n-1)/2
D.(n+1)/2
答案:
36.用链表表示线性表的优点是____。
( )
A.便于随机存取
B.花费的存储空间比顺序表少
C.便于插入与删除
D.数据元素的物理顺序与逻辑顺序相同
答案:
37.当需要随机查找线性表的元素时,宜采用____作存储结构。
()
A.双向链表
B.循环链表
C.顺序表
D.单链表
答案:
38.线性表的链接实现有利于运算。
()
A.插入
B.读表元
C.查找
D.定位
答案:
39.线性表采用链式存储时,其地址____。
( )
A.必须是连续的
B.部分地址是连续的
C.一定是不连续的
D.连续与否均可以
答案:
40.设单链表中指针p指着结点a,若要删除a之后的结点(若存在),则需要修改指针的操作为____。
( )
A.p->next=p->next->next
B.p=p->next
C.p=p->next->next
D.p->next=p
答案:
A
41.向一个有127个元素顺序表中插入一个新元素并保存原来顺序不变,平均要移动个元素。
()
A.64
B.63.5
C.63
D.64.5
答案:
A
42.向一个有127个元素的顺序表中删除一个元素,平均要移动个元素。
()
A.8
B.63.5
C.63
D.7
答案:
C
43.____又称为FIFO表。
()
A.队列
B.散列表
C.栈
D.哈希表
答案:
A
44.设依次进入一个栈的元素序列为c,a,b,d,不可得到出栈的元素序列有_____。
()
A.a.b,c,d
B.a,d,c,b
C.b,a,d,c
D.c,d,a,b
答案:
D
45.链式栈与顺序栈相比,一个比较明显的优点是_____。
()
A.插入操作更加方便
B.通常不会出现栈满的情况
C.不会出现栈空的情况
D.删除操作更加方便
答案:
46.在一个顺序存储的循环队列中,队头指针指向队头元素的_____。
()
A.前一个位置
B.后一个位置
C.队头元素位置
D.队尾元素的前一位置
答案:
47.若一个栈的输入序列是1,2,3……n,则输出序列的第一个元素是n,则第i个输出元素是_____。
()
A.n-i
B.i
C.n-i+1
D.n-i-1
答案:
C
48.栈的数组表示中,top为栈顶指针,栈空的条件是_____。
()
A.top=0
B.top=maxSize
C.top=maxSize
D.top=-1
答案:
D
49.在数组表示的循环队列中,front、rear分别为队列的头、尾指针,maxSize为数组的最大长度,队满的条件是_____。
()
A.front=maxSize
B.(rear+1)%maxSize=front
C.rear=maxSize
D.rear=front
答案:
B
50.栈和队列的共同特点是_____。
()
A.都是先进后出
B.都是先进先出
C.只允许在端点处插入和删除
D.没有共同点
答案:
C
51.若非空队列采用链式存储结构,front和rear分别为队头元素与队列尾元素的指针,删除此时队列的一个元素的操作时依次执行p←front,______,callRET(P)。
()
A.front←link(rear)
B.rear←link(p)
C.rear←link(front)
D.front←link(p)
答案:
52.由两个栈共享一个向量空间的好处是_____。
()
A.减少存取时间,降低下溢发生的机率
B.节省存储空间,降低上溢发生的机率
C.减少存取时间,降低上溢发生的机率
D.节省存储空间,降低下溢发生的机率
答案:
53.数组data[m]为循环队列的存储空间,front为队头指针,rare为队尾指针,则执行入队的操作为_____。
()
A.rare=rare+1
B.rare=(rare+1)%(m-1)
C.rare=(rare-1)%m
D.rare=(rare+1)%m
答案:
D
54.将递归算法转换成对应的非递归算法时,通常需要使用____。
()
A.栈
B.队列
C.链表
D.数组
答案:
55.高度为h(h>0)的二叉树最少有________个结点。
()
A.h
B.h-1
C.h+1
D.2h
答案:
A
56.树型结构最适合用来描述____。
()
A.有序的数据元素
B.无序的数据元素
C.数据元素之间的具有层次关系的数据
D.数据元素之间没有关系的数据
答案:
C
57.有n(n>0)个结点的完全二叉树的深度是____。
()
A.log2(n)
B.log2(n)+1
C.log2(n+1)
D.log2(n)+1
答案:
BD
58.___又是一棵满二叉树。
()
A.二叉排序树
B.深度为5有31个结点的二叉树
C.有15个结点的完全二叉树
D.哈夫曼(Huffman)树(没有度为1的结点)
答案:
C
59.深度为k的满二叉树有____个分枝结点。
()
A.2k-1
B.2k-1-1
C.2k+1
D.2k-1+1
答案:
60.若已知一棵二叉树先序序列为ABCDEFG,中序序列为CBDAEGF,则其后序序列为____。
()
A.CDBGFEA
B.CDBFGEA
C.CDBAGFE
D.BCDAGFE
答案:
A
61.二叉树第i(i>=1)层上至多有结点。
()
A.2i
B.2i
C.2i-1
D.2i-1
答案:
C
62.在一棵具有5层的满二叉树中结点总数为____。
()
A.31
B.32
C.33
D.16
答案:
A
63.一个二叉树按顺序方式存储在一个维数组中,如图
01234567891011121314
A
B
C
D
E
F
G
H
I
J
则结点E在二叉树的第层。
()
A.1
B.2
C.3
D.4
答案:
C
64.在一棵度为3的树中,度为3的结点个数为2,度为2的结点个数为1,则度为0的结点个数为____。
()
A.4
B.5
C.6
D.7
答案:
C
65.n个顶点的带权无向连通图的最小生成树包含________个顶点。
()
A.n-1
B.n
C.n/2
D.n+1
答案:
B
66.具有n个顶点的有向完全图有条弧。
()
A.n
B.n*(n-1)
C.n*(n+1)
D.n*n
答案:
B
67.n个顶点的连通图至少有条边。
()
A.n-1
B.n
C.n+1
D.0
答案:
68.在一个有向图中,所有顶点的入度之和等于所有顶点出度之和的倍。
()
A.1/2
B.1
C.2
D.4
答案:
69.在含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为____。
()
A.e
B.2e
C.n2-e
D.n2-2e
答案:
D
70.折半查找有序表(6,15,30,37,65,68,70,72,89,99),若查找元素37,需依次与表中元素____进行比较。
()
A.65,15,37
B.68,30,37
C.65,15,30
D.65,15,30,37
答案:
D
71.对有3600个记录的索引顺序表(分块表)进行查找,最理想的块长为___。
()
A.1800
B.60
C.1200
D.log23600
答案:
B
72.折半查找20个记录的有序表,若查找失败,比较关键字的次数____。
()
A.最多为6
B.最多为5
C.最多为4
D.最多为3
答案:
B
73.中序遍历一棵二叉排序树所得到的结点序列是键值的序列。
()
A.递增或递减
B.递减
C.递增
D.无序
答案:
C
74.散列表中的冲突是指____。
()
A.两个元素具有相同的序号
B.两个元素的键值相同,而其他属性相同
C.不同的键值对应相同的存储地址
D.数据元素的地址相同
答案:
75.用线形探测法查找散列表,可能要探测多个散列地址,这些位置上的键值____。
()
A.一定是同义词
B.不一定是同义词
C.一定不是同义词
D.都相同
答案:
76.在初始为空的杂凑表中依次插入关键字序列(MON,TUE,WED,THU,FRI,SAT,SUN),杂凑函数为H(k)=iMOD7,其中,i为关键字k的第一个字母在英文字母表中的序号,地址值域为[0:
6],采用线性再散列法处理冲突。
插入后的杂凑表应该如________________所示。
()
A.0123456
THUTUEWEDFRISUNSATMON
B.0123456
TUETHUWEDFRISUNSATMON
C.0123456
TUETHUWEDFRISATSUNMON
D.0123456
TUETHUWEDSUNSATFRIMON
答案:
77.设有一个含200个表项的散列表,用线性探查法解决冲突,按关键码查询时找到一个表项的平均探查次数不超过1.5,则散列存储空间应能够至少容纳个表项。
(设搜索成功的平均搜索长度为Snl=(1+1/(1-a))/2,其中a为装填因子)()
A.400
B.526
C.624
D.676
答案:
78.对长度为10的表作选择(简单选择)排序,共需比较____次关键字。
()
A.45
B.90
C.55
D.110
答案:
79.设有100个数据元素,采用折半搜索时,最大比较次数为( )。
A.6
B.7
C.8
D.10
答案:
A
80.对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。
这样的排序方法是____。
()
A.选择排序
B.直接插入排序
C.快速排序
D.起泡排序
答案:
C
81.对5个不同的数据元素进行直接插入排序,最多需要进行次比较。
()
A.8
B.10
C.15
D.25
答案:
82.采用折半查找方法进行查找,数据文件应为,且限于。
()
A.有序表 顺序存储结构
B.有序表 链式存储结构
C.随机表 顺序存储结构
D.随机表 链式存储结构
答案:
A
83.从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其存放在已排序序列的合适位置,该排序方法称为排序法。
()
A.插入
B.选择
C.希尔
D.二路并归
答案:
A
84.就平均查找速度而言,下列几种查找速度从慢至快的关系是。
()
A.顺序折半哈西分块
B.顺序分块折半哈西
C.分块折半哈西顺序
D.顺序哈西分块折半
答案:
B
85.在下列算法中,算法可能出现下列情况:
在最后一趟开始之前,所有的元素都不在其最终的位置上。
()
A.堆排序
B.冒泡排序
C.插入排序
D.快速排序
答案:
C
86.堆是一个键值序列(K1,K2,…,Kn),对I=1,2…[n/2],满足。
()
A.Ki<=K2i<=K2i+1
B.KiC.Ki<=K2i且Ki<=K2i+1
D.Ki<=K2i或Ki<=K2i+1
答案:
87.对于关键字序列{46,58,15,45,90,18,10,62}
,其快速排序第一趟的结果是。
()
A.15 45 18 46 10 62 58 90
B.10 15 18 45 46 58 62 90
C.10 18 15 45 46 90 58 62
D.15 10 18 45 46 62 58 90
答案:
88.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下:
20,15,21,25,47,27,68,35,84
15,20,21,25,35,27,47,68,84
15,20,21,25,27,35,47,68,84
则所采用的排序方法是。
()
A.选择排序
B.希尔排序
C.归并排序
D.快速排序
答案:
89.下列关键字序列中是堆。
()
A.16,72,31,23,94,53
B.94,23,31,72,16,53
C.16,53,23,94,31,72
D.16,23,53,31,94,72
答案:
90.目前以比较为基础的内部排序方法中,其比较次数与待排序的记录的初始排列状态无关的是。
()
A.插入排序
B.直接选择排序
C.快速排序
D.冒泡排序
答案:
B
91.对n个不同的排序码进行冒泡排序,在元素无序的情况下比较的次数为。
()
A.n+1
B.n
C.n-1
D.n(n-1)/2
答案:
D
二、多项选择题
1.根据数据元素之间的不同特性,通常具有这几种基本数据结构。
()
A.集合
B.线形结构
C.树型结构
D.图型结构
答案:
ABCD
2.数据元素之间的关系在计算机中有两种不同的表示方法。
()
A.顺序存储结构
B.二叉树存储结构
C.链式存储结构
D.网络结构
答案:
AC
3.查找哈希(Hash)表,解决冲突的的方法有___。
()
A.除留余数法
B.线性探测再散列法
C.直接地址法
D.链地址法
答案:
BD
三、判断题
1.非空线性表中任意一个数据元素都有且仅有一个直接前驱元素。
()
答案:
F
2.数组是一种没有插入与删除操作的线性结构。
()
答案:
T
3.非空线性表中任意一个数据元素都有且仅有一个直接后继元素。
()
答案:
F
4.数据的存储结构不仅有顺序存储结构和链式存储结构,还有索引结构与散列结构。
()
答案:
F
5.线性链表中各个链结点之间的地址不一定要连续。
()
答案:
T
6.若频繁地对线性表进行插入和删除操作,该线性表采用顺序存储结构更合适。
()
答案:
F
7.若线性表采用顺序存储结构,每个数据元素占用4个存储单元,第12个数据元素的存储地址为144,则第1个数据元素的存储地址是101。
(100)
答案:
F
8.若长度为n的线性表采用顺序存储结构,删除表的第i个元素之前需要移动表中n-i+1个元素。
()
答案:
F
9.符号link(p)出现在表达式中表示p所指的那个结点的内容。
()
答案:
F
10.要将指针p移到它所指的结点的下一个结点是执行语句p←link(p)。
()
答案:
T
11.在非空线性链表中由p所指的结点后面插入一个由q所指的结点的过程是依次执行语句:
link(q)←link(p);link(p)←q。
()
答案:
T
12.在非空双向循环链表中由q所指的结点后面插入一个由p指的结点的动作依次为:
llink(p)←q,rlink(p)←rli