算法与数据结构第6章2.ppt

算法与数据结构第6章2

第6章 树和二叉树( Tree Binary Tree ) 6.2 二叉树 为何要重点研究每结点最多只有两个 “叉” 的树? 二叉树的结构最简单,规律性最强; 可以证明,所有树都能转为唯一对应的二叉树,不失一般性。 2. 二叉树的性质 (3+2) 对于两种特殊形式的二叉树(满二叉树和完全二叉树),还特别具备以下2个性质: 课堂讨论: 4. 二叉树的存储结构 讨论:不是完全二叉树怎么办? 二、链式存储结构 用二叉链表即可方便表示。 例: 6.3 遍历二叉树和线索二叉树 例1: 例2:用二叉树表示算术表达式 遍历的算法实现:用递归形式格外简单! 先序遍历算法 DLR( liuyu *root ) {if (root !=NULL) //非空二叉树 {printf(“%d”,root-data); //访问D DLR(root-lchild); //递归遍历左子树 DLR(root-rchild); //递归遍历右子树 } return(0); } 对遍历的分析: 例:【严题集6.42③】编写递归算法,计算二叉树中叶子结点的数目。 注:要实现遍历运算必须先把二叉树存入机内。 习题讨论: 3 中序遍历的非递归(迭代)算法 特别讨论:若已知先序/后序遍历结果和中序遍历结果,能否“恢复”出二叉树? 【严题集6.31④】 证明:由一棵二叉树的先序序列和中序序列可唯一确

文档评论(0)

1亿VIP精品文档

相关文档