《数据结构应用题总结》由会员分享,可在线阅读,更多相关《数据结构应用题总结(11页珍藏版)》请在金锄头文库上搜索。
1、-+/a*b-efcd试写出二叉树的先序遍历,中序遍历,后序遍历序列先序遍历:中序遍历:后序遍历:层次遍历:将树转换成二叉树加线:在兄弟之间加一连线抹线:对每个结点,除了其左孩子外,去除其与其余孩子之间的关系旋转:以树的根结点为轴心,将整树顺时针转45 森林转换成二叉树1.将各棵树分别转换成二叉树;ABCDEFGHIJABCDEFGHIJ2.将每棵转换后的二叉树依次连接成为右子这是刚开始的森林 ABCD 这是最终的效果 上面3个是树转化成的二叉树 二叉树转换成森林抹线:1.将二叉树中根结点与其右孩子连线,及沿右分支搜索到的所有右孩子间连线全部抹掉,使之变成孤立的无右孩子二叉树;2.将孤立的二叉
2、树转换成树构造Huffman树深度优先遍历 V1 V2 V4 V8 V5 V3 V6 V7 广度遍历最小生成树普里姆(Prim)算法:克鲁斯卡尔(Kruskal)算法:拓扑排序在有向图中选一个没有前驱的顶点且输出之从图中删除该顶点和所有以它为尾的弧重复上述两步,直至全部顶点均已输出;或者当图中不存在无前驱的顶点为止关键路径见笔记11哈希表的建立,处理冲突方法开放定址法:关键字(19,14,23,1,68,20,84,27,55,11,10,79)用链地址法处理冲突:ASL=(1*6+2*4+3+4)/12=1.7512二叉排序树的建立左边都是小的,右边都是大于等于的13 堆排序1)堆排序需解决
3、的两个问题:如何由一个无序序列建成一个堆?如何在输出堆顶元素之后,调整剩余元素,使之成为一个新的堆?2)第二个问题解决方法筛选方法:输出堆顶元素之后,以堆中最后一个元素替代之;然后将根结点值与左、右子树的根结点值进行比较,并与其中小者进行交换;重复上述操作,直至叶子结点,将得到新的堆,称这个从堆顶至叶子的调整过程为“筛选”3)第一个问题解决方法方法:从无序序列的第n/2个元素(即此无序序列对应的完全二叉树的最后一个非终端结点)起,至第一个元素止,进行反复筛选考虑到公司仍有部分低层及高层人员的补充,因此在选择招聘渠道供应商的附加值时以配送普工现场招聘会和高端人才交流会为佳,另外根据供应商平台实力,若能给公司提供合适的猎头服务也应当纳入甄选范畴。