首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载 | ||
2012中考 | 2012高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试 MPA考试 | 中科院 |
||
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 托业 | 雅思 | 专四专八 | 口译笔译 | 博思 GRE GMAT | 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 零起点法语 | 零起点德语 | 零起点韩语 |
||
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 华为认证 | Java认证 |
||
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格 报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师 人力资源 | 管理咨询师 | 秘书资格 | 心理咨询师 | 出版专业资格 | 广告师职业水平 | 驾驶员 网络编辑 | 公共营养师 | 国际货运代理人 | 保险从业资格 | 电子商务师 | 普通话 | 企业培训师 营销师 |
||
卫生资格 | 执业医师 | 执业药师 | 执业护士 | ||
会计从业资格考试(会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师 注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师 |
||
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师 质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师 设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师 城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师 化工工程师 | 材料员 |
||
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏 |
一、判断题(正确的在题后括号内划“√”,错误的划“×”。每小题1分,共 5分)
1. AVL树的任何子树都是AVL树。( )
2. 用相邻矩阵表示图所用的存储空间大小与图的边数成正比。( )
3. 霍夫曼树一定是满二叉树。( )
4. 栈是一种线性结构。( )
5. B+树既适于随机检索,也适于顺序检索。( )
二、 单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内。每小题2分,共10分)
1. 一个二叉树的前序周游序列为ABCDEFG,它的对称序周游序列可能是( )
A. CABDEFG
B. ABCDEFG
C. DACEFBG
D. EABCDFG
2. 高度为h的满二叉树(仅含根结点的二叉树高度为零)的结点最少是多少( )
A. h+1
B. 2h+1
C. 2h+1-1
D. 2h
3. 对包含n个关键码的散列表进行检索,平均检索长度是( )
A. O( log2n )
B. O( n )
C. O(n log2n )
D. 不直接依赖于n
4. 设有关键码初始序列{ Q,H,C,Y,P,A,M,S,R,D,F,X},新序列{F,H,C,D,P,A,M,Q,R,S,Y,X}是采用下列哪种排序方法对初始序列进行第一趟扫描的结果?
A. 直接插入排序
B. 二路归并排序
C. 以第一元素为分界元素的快速排序
D. 基数排序
5. 下列说法中错误的是
A. n个结点的树的各结点度数之和为n-1
B. n个结点的无向图最多有n*(n-1)条边
C. 用相邻矩阵存储图时所需存储空间大小与图的结点数有关,而与边数无关
D. 散列表中碰撞的可能性大小与负载因子有关
三、填空题(每空2分,共16分)
1. 下面字符树包含___________个关键字。
2. 用可扩充散列组织文件时,若目录深度为d,指向某叶页的指针为n个,则该叶页的局部深度为_________。
3. 含有3个2度结点和4个叶结点的二叉树可含___________个1度结点。
4. 含有2的n次方个结点的二叉树高度至少是________,至多是________(仅含根结点的二叉树高度为零)。
5. 用起泡法对n个关键码排序,在最好情况下,只需做___次比较和___次移动;在最坏的情况下要做____次比较。
四、求解下列问题(每小题9分,共45分)
1. 在一个空AVL树内,依次插入关键字10,20,30,40,50,60分别画出10,20,30插入完和所有关键字都插入完的AVL树。
2. 设有3阶B+树如下所示:
画出插入关键字50后的B+树。
3. 设有6*6的稀疏矩阵如下所示,若用带辅助行向量的二元组表示法存储该矩阵,请给出辅助行向量及二元组,并说明如何确定A[ i, j ]的值(1≤i, j≤6)。
4. 请画出下面广义表相应的加入表头结点的单链表表示,D(A(x,y,L(a,b)),B(z,A(x,y,L(a,b))))。
5. 试给出下面事件结点网络中的所有关键路径和关键活动,并指出哪些关键活动提前完成可导致整个工程提前完成?
五、算法题(10分)
设有PASCAL说明如下:
type pointer =↑node;
node = record
info: char;
left, right: pointer
end;
procedure unknown (var p: pointer; ch: char);
begin
if p= nil then
begin
new (p);
p↑.info :=ch;
p↑.left :=nil;
p↑.right:=nil
end
else
if ch = p↑.info then
writeln (ch, ‘Exists in the binary tree!’)
else
if ord(ch) < ord(p↑.info) then
unknown (p↑.left, ch)
else
unknown (p↑.right, ch)
end;
过程unknown实现了对二叉排序树的一种运算;
(1) 试说明unknown的功能
(2) 若root是pointer型变量,且root指向如下二叉树的根结点,试画出执行完unknown(root,‘X’);后root指向的二叉树。
六、算法填空和分析(共14分)
下面是用PASCAL语言描述的拓扑排序算法,图用相邻矩阵表示,存储在adj内;过程degree用于计算出各结点的入度(用负数表示,如用-2表示入度为2)并存于indegree内。
const M =100;
var adj: array [1..M, 1..M] of integer;
n: integer;
indegree: array [1..M] of integer;
procedure degree (n: integer);
var i,j: integer;
begin
for i:=1 to n do
indegree [i] := 0 ;
for i:=1 to n do
for j :=1 to n do
if__________(1) then
indegree [j] := indegree [j] – 1;
end;
procedure sort (n: integer);
var count,i,s,sp,width: integer;
begin
sp :=0;
for i:=1 to n do
if___________(2)__________then
begin
ind
ind
ind
ind
indegree [i] :=sp;
end;
count :=0;
while sp>0 do
begin
s :=sp;
sp:=indegree[s];
count;=count+1;
if s<10 then width :=1
else
if s<100 then width :=2
else width :=3;
write (‘v’,s,‘ ’: 5-width);
for i:=1 to n do
if adj [s,i] =1 then
if indegree [i]<0 then
begin
___________(3)__________ ;
if indegree [i]=0 then
begin
indegree [i]:=sp;
____________(4)__________
end
end
end;
if_________(5)__________then
writeln( ‘The graph contains a cycle!’)
end;
(1)填写算法中空缺的语句或表达式;(10分)
(2)给出下图的所有拓扑序列。(4分)
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |