《最新双向循环链表操作二叉树和树操作图的创建及相关操作的实现6PPT课件》由会员分享,可在线阅读,更多相关《最新双向循环链表操作二叉树和树操作图的创建及相关操作的实现6PPT课件(17页珍藏版)》请在金锄头文库上搜索。
1、双向循环链表操作双向循环链表操作- -二叉树和树二叉树和树操作操作- -图的创建及相关操作的实图的创建及相关操作的实现现6 6所选题目:所选题目:1.1.双向循环链表双向循环链表2.2.二叉树二叉树3.3.树树 4. 4. 图的相关操作图的相关操作二叉树&树实现的功能:一一. .统计二叉树叶子结点的个数统计二叉树叶子结点的个数 二二. .孩子孩子-兄弟表示法兄弟表示法 树的先根遍历树的先根遍历树的后根遍历树的后根遍历树的层次遍历;树的层次遍历; 主要的成员方法: 二叉树二叉树 BTNode CreateBT(AnyType arr) /先序创建二叉树先序创建二叉树 countNode() /统
2、计叶子节点个数统计叶子节点个数 树 CSNode CSNodeCreateBinaryTree(AnyType st) /孩子兄弟树的创建孩子兄弟树的创建 FontOrder(CSNode t) /树的前根遍历树的前根遍历 Behind( CSNode t) /树的后根遍历树的后根遍历 levelTravel(CSNode root) /层次遍历层次遍历模块设计(二叉树) 总体思路:通过递归来实现操作模块设计(树)执行步骤:创建孩子兄弟树创建孩子兄弟树实现树的前根遍历实现树的前根遍历树的后根遍历树的后根遍历实现层次遍历实现层次遍历 void类型直接输出类型直接输出 图的基本操作 1.完成图的深
3、度优先遍历和广度优先遍历;完成图的深度优先遍历和广度优先遍历;2.求图的深度优先或广度优先的生成树(或求图的深度优先或广度优先的生成树(或生成森林)(存储结构为孩子生成森林)(存储结构为孩子-兄弟链表),兄弟链表),并对生成树进行遍历;并对生成树进行遍历;3.对于图(不是网),求顶点对于图(不是网),求顶点u到到v的一条简的一条简单路径;单路径;总体思路 通过深度遍历、递归、Dijkstra、Floyd、prim思想来操作。概念模型模块设计函数或类的具体定义和功能函数或类的具体定义和功能DFSTraverse() / 图的深度优先遍历图的深度优先遍历BFS()/ 对图进行广度优先遍历对图进行广度优先遍历CBNode dfsTraverseTree()/ 图的深度优先生成树图的深度优先生成树PathJudgement()/ 图的路径操作图的路径操作结束语结束语谢谢大家聆听!谢谢大家聆听!17