北京大学1997硕士入学数据结构试题1(16分)填空①设只包含要根结点的二叉树的高度为0,则高度为k的二叉树的最大结点数为,最小结点数为
②某二叉树结点的对称序序列为A,B,C,D,E,F,G,后序序列为B,D,C,A,F,G,E,则该二叉树结点的前序序列为,该二叉树对应的树林包括棵树
③求具有最小带权外部路径长度的扩充二叉树的算法称为算法,对于给出的一组权W={10,12,16,21,30},通过该算法求出的扩充二叉树的带权外部路径长度为
④设有关键码序列(Q,H,C,Y,Q,A,M,S,R,D,F,X),要按照关键码值递增的次序进行排序,若采用初始步长为4的Shell排序法,则一趟扫描的结果是;若采用以第一个元素为分界元素的快速排序法,则一趟扫描的结果是
2(10分)请简要回答下列问题①什么是抽象数据类型
试举一例说明之
②什么是广义表
请简述广义表与线性表的主要区别
3(6分)给定关键码序列(26,25,20,33,21,24,45,204,42,38,29,31),要用散列法进行存储,规定负载因子a=0
①请给出除余法的散列函数
②用开地址线性探查法解决碰撞,请画出插入所有的关键码后得到的散列表,并指出发生碰撞的次数
4(6分)本题要求在检索各结点的概率不相等的条件下构造最佳二叉排序树
给出关键码集合{B,E,H}key1key2key3以及权的序列(9458613)p1p2p3q0q1q2q3请构造最佳二叉排序树
5(12分)①请画出往图1的5阶B-树中插入一个关键码390后得到的B-树,以及再删除关键码150后得到的B-树
②包括n个关键码的m阶B-树在一次检索中最多涉及多少个结点
(要求写出推导过程)图1题5图6(10分)如图2所示是一棵正在进行插入运算的AVL树,关键码70的插入使它失去了平衡,按照AVL树的插入方法,需要对它的结构进行调整以恢复平衡