首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 考研频道 > 历年真题 > 专业课真题 >

清华大学2005年计算机专业考研试题[回忆版]

2009-07-02 
—属于你的学习中心

ds(50分)
一。(15分)
   回答下列各题,并简要说明理由,每题3分
1。 什么是线形表?线形表的各元素类型是否必须是同一类型?为什么?
2。线形表有两种不同的继承形式,顺序的和链接的存储结构,
    在使用时,如何确定使用哪种存储结构?
3。给出一个二叉树的前序和中序遍历序列,要求写出后序遍历序列。
4。(记不清楚具体数字了,大概的数字把)
    一个文件用b+树做索引,给定文件大小2000000 b,每个页块大小为4000 b,
    每个指针大小为5 b。每个记录是200 b,其中关键码为5 b.
    问:
       1)应采用多少阶b+树?
       2)该文件索引块数目。
5。下列哪些可以做hash函数?哪些效果不好?哪些效果好?
    其中,n为hash表的表长;random(n)可以产生一个0---n=1 的随机数;
    p(n)为小于n的最大素数。
       1)hash(key) = key/n;
       2) hash(key) = 1;
       3) hash(key) = (key + random(n)) % n;
       4) hash(key) = key % p(n);
二。(5分)
    证明:一棵二叉树的前序,中序,后序遍历序列中,叶结点的相对位置是不变的
三。(15分)
    1) 给定一组关键码,要求依次插入建立一棵avl树,大约12个关键码左右,
       (和03年那个真题只是关键码的不同)
        需要旋转的时候,要求标出旋转的类型:左单旋,右单旋,先左后右双旋,先右后
左双旋。
    2)在建成的这棵avl树上,依次删除关键码****(四个),要求:
           如果需要旋转,那要标出旋转类型;用中序的直接前驱代替关键码
四。(15分)
    1)将书上284页的dijkstra算法挖去5个空,让添。(5分)
       具体字母有差别,但是确实就是那个算法,我按照书上的来了。
         void shortestpath(graph<t> g, int v, int n)
         {
              for (int i = 0; i < n; i++){  //n为图的顶点数目
                   dist[i] = edge[v][i];
                   s[i] = 0;
                   if (i != v && dist[i] < maxnum)
                        1空;
                   else
                        path[i] = -1;
              }
              s[v] = 1;
              dist[v] = 0;
              for (int i = 0; i < n - 1; i++){
                   float min = maxnum;

热点排行