5.3二叉树的存储结构

上传人:sx****84 文档编号:243099690 上传时间:2024-09-15 格式:PPT 页数:15 大小:280.50KB
返回 下载 相关 举报
5.3二叉树的存储结构_第1页
第1页 / 共15页
5.3二叉树的存储结构_第2页
第2页 / 共15页
5.3二叉树的存储结构_第3页
第3页 / 共15页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,数据结构与算法,For,软件学院,09,级本科生,2010-2011,秋,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,5,二叉树,5.1,二叉树的概念,5.2,二叉树的周游,5.3,二叉树的存储结构,5.4,二叉搜索树,5.5,堆与优先队列,5.6,Huffman,树及其应用,5.7,二叉树知识点总结,主要内容,5.3,二叉树的存储结构,二叉树的存储结构:,链式存储结构,顺序存储结构,5.3.1,二叉树的链式存储结构,所谓链式存储方式,是指二叉树的各结点随机的存储在,内存空间中,结点之间的关系用指针表示。,二叉树的链表的结点包含三个域:数据域和左、右指针域。用,info,域存储结点的数据元素,另外再设置两个指针域,left,和,right,,分别指向结点的左子结点和右子结点,当结点的某个子结点为空时,相应的指针为空指针。其结点结构如图,5.7(a),所示。有时候为了便于查找二叉树中某个结点的父结点,还可以在结点结构中加入一个指向其父结点的指针域,如图,5.7(b),所示,图,5.7,二叉树结点的存储结构,5.3.1,二叉树的链式存储结构,利用这两种结点结构所得到的二叉树的存储结构分别称为,二叉链表,(也称“,left-right,存储法”)和,三叉链表,在使用二叉链表存储的二叉树中,如果找某个结点的父结点,那么需要从根结点出发依次巡查,在三叉链表表示的二叉树中只需要顺着,parent,指针就能直接找到该结点的父结点,图 二叉链存储结构的二叉树,root,A,B,C,D,E,F,G,root,A,B,C,D,E,F,G,(a),不带头结点的二叉树,(b),带头结点的二叉树,二叉链存储结构的二叉树,二叉链存储结构的二叉树,A,B,C,D,E,F,G,A,B,C,D,E,F,G,在,n,个结点的二叉链表中,有,n+1,个空指针域,。,三叉链存储结构的二叉树,A,B,C,D,E,F,G,A,B,C,D,E,F,G,二叉树的顺序存储结构,二叉树的顺序存储,是指按照一定次序,用一组地址连续的存储单元存储二叉树上的各个结点元素。,完全二叉树的顺序表示法,:,对于一棵具有,n,个结点的完全二叉树,可以从根结点起自上而下,从左至右地把所有的结点编号,得到一个足以反映整个二叉树结构的线性序列。线性序列里存储的结点就是按照层次周游二叉树得到的排列。,复习:完全二叉树的主要性质,7,性质,7.,对于具有,n,个结点的完全二叉树,结点按层次由左到右编号,则对任一结点,i,(,0 i n - 1,)有,(,1,)如果,i = 0,,则结点,i,是二叉树的根结点;若,i,0,,则其父结点编号是,(i - 1)/2,。,(,2,)当,2i + 1 n - 1,时,结点,i,的左子结点是,2i + 1,,否则结点,i,没有左子结点。,当,2i + 2 n - 1,时,结点,i,的右子结点是,2i + 2,,否则结点,i,没有右子结点。,(,3,)当,i,为偶数且,0 i n,时,结点,i,的左兄弟是结点,i - 1,,否则结点,i,没有左兄弟。,当,i,为奇数且,i+1 n,时,结点,i,的右兄弟是结点,i + 1,,否则结点,i,没有右兄弟。,B,A,C,E,D,F,G,H,I,J,K,L,M,N,O,B,A,C,E,D,F,G,H,I,J,A,B,C,D,O,N,M,L,K,J,I,H,G,F,E,1,2,0,4,3,5,7,6,11,8,10,9,12,13,14,A,B,C,D,J,I,H,G,F,E,1,2,0,4,3,5,7,6,8,9,完全二叉树的结点可按从上至下和从左至右的次序存储在一维数组中,其结点之间的关系可由公式计算得到。,顺序存储结构,对于一般的非完全二叉树,显然不能直接使用二叉树的顺序存储结构。可以首先在非完全二叉树中增添一些并不存在的空结点使之变成完全二叉树的形态,然后再用顺序存储结构存储。,B,A,C,D,E,G,F,B,A,C,D,E,G,F,(a),一般二叉树,(b),完全二叉树形态,(c),在数组中的存储形式,A,B,C,G,F,E,D,1,2,0,4,3,5,7,6,11,8,10,9,12,数组,下标,高度为,4,,有,7,个结点的一般二叉树的顺序存储,a,b,c,d,e,f,g,g,f,0,0,0,0,e,d,c,b,a,1 2 3 4 5 6 7 8 9 10 11,浪费,4,个,高度为,4,,只有,4,个右孩子的二叉树的顺序存储,0,0,0,0,4,0,0,0,3,0,0,0,2,0,1,1,2,3,4,1 2 3 4 5 6 7 8 9 10 11 12 13 14 15,浪费,11,个,顺序存储结构适用于满二叉树和完全二叉树的存储。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!