首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2012中考 | 2012高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 托业 | 雅思 | 专四专八 | 口译笔译 | 博思
GRE GMAT | 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 |
零起点法语 | 零起点德语 | 零起点韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师 | 秘书资格 | 心理咨询师 | 出版专业资格 | 广告师职业水平 | 驾驶员
网络编辑 | 公共营养师 | 国际货运代理人 | 保险从业资格 | 电子商务师 | 普通话 | 企业培训师
营销师
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
化工工程师 | 材料员
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
自学考试
您现在的位置: 考试吧(Exam8.com) > 自学考试 > 历年真题 > 公共课 > 北京 > 正文

1999年上半年北京数据结构试卷

  一、判断题(正确的在题后括号内划“√”,错误的划“×”。每小题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分)
    

文章搜索
中国最优秀自学考试名师都在这里!
韩旺辰老师
在线名师:韩旺辰老师
   中国传媒大学教授,北京培黎职业学院院长助理兼新闻广告系主任,高...[详细]
自学考试栏目导航
版权声明:如果自学考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本自学考试网内容,请注明出处。