数据结构与算法_北京大学2008_张铭_二叉树_5
5.6.2 Huffman编码 用Huffman算法构造出的扩充二叉树给出了各字符的编码,同时也用来译码 从二叉树的根开始,把二进制编码每一位的值与Huffman树边上标记的0,1相匹配,确定选择左分支还是右分支,直至确定一条到达树叶的路径。一旦到达树叶,就译出了一个字符。然后继续用这棵二叉树继续译出其它二进制编码 5.7 二叉树知识点总结 二叉树的概念及主要性质 二叉树的抽象数据类型及周游方法 二叉树的存储结构 二叉搜索树及其应用 堆的概念、性质与构造 Huffman树的主要思想与具体应用 The End Thank You! /mzhang/DS/ /pkujpk/course/sjjg 张铭,王腾蛟,赵海燕 高等教育出版社,2008. 6。“十一五”国家级规划教材 * * pointer-left = newpointer; // newpointer作为pointer的左子树 return; } else pointer = pointer-leftchild(); // 向左下降 } else { // 若待插入结点大于pointer的关键码值 if (pointer-rightchild() == NULL) { // 如果pointer没有右孩子 pointer-right = newpointer; // newpointer作为pointer的右子树 return; } else pointer = pointer-rightchild(); // 向右下降 } } } 5.4 二叉搜索树 对二叉搜索树的检索,每一次只需与结点的一棵子树相比较 在执行插入操作时,也不必像在有序线性表中插入元素那样要移动大量的数据,而只需改动某个结点的空指针插入一个叶结点即可 与查找结点的操作一样,插入一个新结点操作的时间复杂度是根到插入位置的路径长度,因此在树形比较平衡时二叉搜索树的效率相当高 二叉搜索树的删除 设pointer,temppointer是指针变量,其中pointer表示要删除的结点。首先找到待删除的结点pointer,删除该结点的过程如下: 若结点pointer没有左子树,则用pointer右子树的根代替被删除的结点pointer; 若结点pointer有左子树,则在左子树里找到按中序周游的最后一个结点temppointer,把temppointer的右指针置成指向pointer的右子树的根,然后用结点pointer左子树的根代替被删除的结点pointer。 二叉搜索树的删除 图5.12 二叉搜索树的删除示例 图5.11 二叉搜索树 二叉搜索树的删除 改进的二叉搜索树结点删除算法的思想为: 若结点pointer没有左子树,则用pointer右子树的根代替被删除的结点pointer 若结点pointer有左子树,则在左子树里找到按中序周游的最后一个结点temppointer(即左子树中的最大结点)并将其从二叉搜索树里删除 由于temppointer没有右子树,删除该结点只需用temppointer的左子树代替temppointer,然后用temppointer结点代替待删除的结点pointer 二叉搜索树的删除 图5.13 改进的二叉搜索树的删除 图5.11 二叉搜索树 二叉搜索树的删除 【算法5.10】 改进的二叉搜索树的结点删除 templateclass T void BinarySearchTreeT::DeleteNode( BinaryTreeNodeT* pointer) {//二叉搜索树的删除 BinaryTreeNodeT* temppointer=NULL; BinaryTreeNodeT*parent=GetParent(root,pointer); if(pointer-leftchild() == NULL) { if(parent == NULL) root=pointer-rightchild(); 二叉搜索树的删除 else if(parent-leftchild()==pointer) parent-left=pointer-rightchild(); else
您可能关注的文档
最近下载
- 电子病历系统应用水平四级实证材料通用模板(基本项部分)(2022版).doc VIP
- 实施指南《GB_T37306.1-2019金属材料疲劳试验变幅疲劳试验第1部分:总则、试验方法和报告要求》实施指南.docx VIP
- 中药生产监督管理专门规定-培训.pptx VIP
- 大学在线开放课程建设实施方案.docx VIP
- 电子病历系统应用水平四级实证材料通用模板(选择项部分)(2024版).doc VIP
- 北师大版六年级数学下册第一单元《圆柱与圆锥》课件.pptx VIP
- PEP人教版小学英语四年级下册阅读理解练习36篇.pdf VIP
- 2025年云南省中考数学——26题二次函数降次幂精选题35道.docx VIP
- 《化妆品中凝血酸(氨甲环酸)的测定 高效液相色谱法》.pdf VIP
- 厂房建设投资估算表.xls VIP
原创力文档

文档评论(0)