重庆邮电大学软件技术基础试题.docx
- 文档编号:9906966
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:27
- 大小:21.38KB
重庆邮电大学软件技术基础试题.docx
《重庆邮电大学软件技术基础试题.docx》由会员分享,可在线阅读,更多相关《重庆邮电大学软件技术基础试题.docx(27页珍藏版)》请在冰豆网上搜索。
重庆邮电大学软件技术基础试题
重庆邮电大学
2010-2011学年二学期计算机软件技术基础期末考试试卷(A卷)
班级:
___________学号:
___________姓名:
___________得分:
___________
题号
一二三四五
六七八九
十成绩
复核
得分
阅卷
题目部分,
(卷面共有
42题,100.0
分,各大题标有题量和总分
)
一、单项选择题
(19
小题,共
38.0
分)
[1]
在分块查找中,若用于保存数据元素的主表长度为n,它被均分为k个子表,每个子表的长度均为n/k,若用顺序查找确定块,则分块查找的平均查找长度为()
A、n+k
B、k+n/k
C、(k+n/k)/2
D、(k
+n/k)/2+1
[2]
在一棵具有
n个结点的二叉树中,所有结点的空子树个数等于(
)
A、n
B、n1
C、n+1
D、2n
[3]
若一个元素序列基本有序,则选用()方法较快。
A、直接插入排序B、简单选择排序
C、堆排序D、快速排序
[4]
在一个单链表中,若要在P所指向的结点之后插入一个新结点,则需要相继修改
()个指针域的值。
A、1B、2C、3D、4
[5]
在一个带头结点的循环双向链表中,若要在P所指向的结点之前插入一个新结
点,则需要相继修改()个指针域的值。
A、2B、3C、4D、6
[6]
在对n个元素进行直接插入排序的过程中,共需要进行()趟。
A、nB、n+1C、n1D、2n
[7]
在一棵树中,()没有前趋结点。
A、树枝结点B、叶子结点C、树根结点D、空结点
[8]
若一个图的边集为{<1,2>,<1,4>,<2,5>,<3,1>,<3,5>,<4,3>},
则从顶点1开始对该图进行深度优先搜索,得到的顶点序列可能为(
)
A、1,2,5,4,3
B、1,2,3,4,5
C、1,2,5,3,4
D、1,4,3,2,5
[9]
对下列4个序列进行快速排序,各以第一个元素为基准进行第一次划分,
则在该
次划分过程中需要移动元素次数最多的序列为(
)
A、1,3,5,7,9
B、9,7,5,3,1
C、5,3,1,7,9
D、5,7,9,1,3
[10]
若对n个元素进行直接插入排序,在进行任意一趟排序的过程中,为寻找插入位
置而需要的时间复杂度为()
A、O
(1)B、O(n)C、O(n2)D、O(lbn)
[11]
在一个具有n个顶点的无向完全图中,所含的边数为()
A、nB、n(n1)C、n(n1)/2D、n(n+1)
/2
[12]
当利用大小为N的数组循环顺序存储一个队列时,该队列的最大长度为
()
A、N2B、N1C、ND、N+1
[13]
若根据查找表(23,44,36,48,52,73,64,58)建立线性哈希表,采用H<(K)=K%
13计算哈希地址,则元素64的哈希地址为()
A、4B、8C、12D、13
[14]
有一个MN的矩阵A,若采用行优先进行顺序存储,每个元素占用8个字节,则
元素的相对字节地址(相对首元素地址而言)为()
A、B、
C、D、
[15]
线性表的链式存储比顺序存储更有利于进行()操作。
A、查找B、表尾插入或删除
C、按值插入或删除D、表头插入或删除
[16]
对于一个有向图,若一个顶点的度为k1,出度为k2,则对应逆邻接表中该顶点
单链表中的边结点数为()
A、k1B、k2C、k1k2D、k1+k2
[17]
假定一个链式队列的队首和队尾指针分别为
front和rear,则判断队空的条件
为(
)
A、front==rear
B、front!
=NULL
C、rear!
=NULL
D、front==NULL
[18]
假定一个链式栈的栈顶指针用
top表示,每个结点的结构为
,退栈
时所执行的指针操作为(
)
A、top>next=top;
B、top=top
>data;
C、top=top
>next;
D、top>next=top>next
>next;
[19]
若要从1000个元素中得到10个最小值元素,最好采用(
)方法。
A、直接插入排序
B、简单选择排序
C、堆排序
D、快速排序
二、填空题(16小题,共16.0分)
[1]
在二维数组a[10,20]中,每个元素占用8个存储单元,假定该数组的首地址为
2000,则数组元素a[6,15]的字节地址为()。
[2]
假定对长度n=50的有序表进行折半查找,则对应的判定树深度为
(),最后一层的结点数为()。
[3]
在线性表的散列存储中,装填因子又称为装填系数,若用m表示散列表的长度,
n表示已散列存储的元素个数,则等于()。
[4]
如图所示为一棵树,则树中所含的结点数为()个,树的深度
为(),树的度为()。
[5]
对于一棵具有n个结点的树,该树中所有结点的度数之和为()。
[6]
()排序方法能够每次使无序表中的第一个记录插入到有序表
中。
[7]
一个图的边集为{(a,c),(a,e),(b,e),(c,d),(d,e)},从顶
点a出发进行深度优先搜索遍历得到的顶点序列为(),从顶
点a出发进行广度优先搜索遍历得到的顶点序列为()。
[8]
假定一个链栈的栈顶指针为top,每个结点包含值域data和指针域next,当进
行出栈运算时(假定栈非空),需要把栈顶指针top修改为()
的值。
[9]
在线性表的单链表存储中,若一个元素所在结点的地址为p,则其后继结点的地
址为()。
[10]
假定对长度n的主表进行i块查找,并假定每个子表的长度均为,则进行分
块查找的平均查找长度为()。
[11]
在有向图的邻接表和逆邻接表表示中,每个顶点邻接表分别链接着该顶点的所有
()和()结点。
[12]
对于一个具有n个顶点的图,若采用邻接矩阵表示,则矩阵大小至少为
()×()。
[13]
假定一组记录为(46,79,56,64,38,40,84,43),在冒泡排序的过程中进
行第一趟排序时,元素79将最终下沉到其后第()个元素的位置。
[14]
一种数据结构的元素集合K和它的二元关系R为:
K={a,b,c,d,e,f,g,h}
R={<d,b>,<d,g>,<b,a>,<b,c>,<g,e>,<g,h>,<e,
f>}
则该数据结构具有()结构。
[15]
若将如图所示为一棵树转换为二叉树,该二叉树中双支结点的个数为
()个,单支结点的个数为(),叶子结点的个数为()
[16]
在双向链表中每个结点包含有两个指针域,一个指向其(点,另一个指向其()结点。
)结
三、简答题
(6
小题,共36.0
分)
[1]
在顺序表中插入和删除一个结点需平均移动多少个结点?
具体的移动次数取决于哪两个因素?
[2]
假设图的顶点是A,B,C,D,⋯,请根据下述的邻接矩阵画出相应的有向图或无向图。
[3]
空串和空格串有何区别?
字符串中的空格符有何意义?
空串在串的处理中有何作用?
[4]
设将整数1,2,3,4依次进栈,但只要出栈时栈非空,则可将出栈操作按任何次序压入其中,请回答下述问题:
(1)若入、出栈次序为Push
(1),Pop(),Push
(2),Push(3),Pop(),Pop
(),Push(4),Pop(),则出栈的数字序列如何?
(2)能否得到出栈序列1423和1432,并说明为什么不能得到或者如何得到。
(3)请分析1,2,3,4的各种排列中,哪些序列是可以通过相应的入、出栈操作得到的。
[5]
循环队列的优点是什么?
如何判别它的空和满?
[6]
对于如图1.15所示的有向图,请给出:
(1)对应的邻接矩阵,并给出A,B,C3个顶点的出度与入度。
(2)邻接表表示与逆邻接表表示。
(3)强连通分量。
四、应用题(1小题,共10.0分)
[1]
编写一个对整型数组A[n+1]中的A[1]至A[n]元素进行选择排序的算法,使得首先从待排序区间中选择出一个最小值并同第一个元素交换,再从待排序区间中选择出一个最大值并同最后一个元素交换,反复进行直到待排序区间中元素的个数不超过1为止。
答案部分,(卷面共有42题,100.0分,各大题标有题量和总分)
一、单项选择题(19小题,共38.0分)
[1]D
[2]C
[3]A
[4]B
[5]C
[6]C
[7]C
[8]A
[9]D
[10]B
[11]C
[12]B
[13]C
[14]B
[15]D
[16]C
[17]D
[18]C
[19]B
二、填空题(16小题,共16.0分)
[1]3080
[2]6;19
[3]n/m
[4]10;4;3
[5]n1
[6]直接插入
[7]acdeb;acedb(答案不惟一)
[8]top>next
[9]p>next
[10]
[11]出边;入边
[12]n;n
[13]4
[14]树型或层次
[15]2;4;3
[16]前趋;后继
三、简答题(6小题,共36.0分)
[1]插入一个结点要平均移动n/2结点;删除一个结点要平均移动(n-1)/2结点;具体的移动次数取决于n的大小和插入或删除的位置这两个因素。
[2]
(1)的无向图如图(a)所示;
(2)的有向图如图(b所示)。
[3]不含任何字符的串称为空串,其串长度为零;仅含有空格字符的串称做空格串,它的长度为串中空格符的个数。
空格符在字符串中可用来分隔一般的字符,便于阅读和识别,空格符会占用有效串长。
空串在处理过程中可用于作为任意字符串的子串。
[4]
(1)1324。
(2)能得到1432,不能得到1423。
因为同时压入2,3,在弹出时根据堆栈的运算规则只能弹出3,2。
(3)在1,2,3,4的各种排列中,根据堆栈的运算规则(先进后出),可能出现的次序是:
1234,1324,1432,2143,2134,3214,4321。
[5]循环队列的存储,可以解决假溢出问题。
空的条件是队首追上队尾,即rear
=
front;满的条件是队尾追上队首,即rear+l=front。
[6]
(1)邻接矩阵为:
A的入度为2,出度为1
B的入度为2,出度为2
C的入度为1,出度为3
(2)邻接表为如图所示。
逆邻接表按边的方向反之即可。
(3)强连通分量如图所示。
四、应用题
(1
小题,共10.0
分)
[1]/*采用另一种直接选择排序的方法对数组
A中的
n元素排序*/
voidSelectSort(intA[]
,intn)
{intx
;
inti
for(i=1
,j,k;
;i<=n/2
/*共需要进行;i++)
n/2
趟*/
/*用k保存当前区间内最小值元
家的下标,初值为
i*
/
值的元素
{k=i
A[k]*/
;
/*从当前排序区间中顺序查找出具有最小
for(j=i+1;j<=n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 重庆 邮电大学 软件技术 基础 试题