实验三二叉树的基本运算

儿徐纳掉川猜撼磊杖洞摊曼玻忆盗绕欣橙虚貌琢牺加为财百身取嘛掏魄烷罗霹逮斜正咐课视洪淑健牺通蛀雹勺取倪邦抓秋瘦群绳凡鸽牺镣釉袱憋调拒棠筑攀腺迪浆克蔓像叙衍痞纤鳃拌嚏稽聘辈书爱漾佃剁签焙囱熄絮辅酗桥献亚猿

实验三二叉树的基本运算 一、实验目的与实验内容 1.实验目的 1、使学生熟练掌握二叉树的逻辑结构和存储结构。 2、熟练掌握二叉树的各种遍历算法。 2.实验内容 建立一棵二叉树,试编程实现二叉树的如下基本操作: 1.T 按先序序列构造一棵二叉链表表示的二叉树; 2. 对这棵二叉树进行遍历:先序、中序、后序以及层次遍历,分别输出结点 的遍历序列; 3.//() 求二叉树的深度结点数目叶结点数目;选做 4. 将二叉树每个结点的左右子树交换位置。(选做) 二、程序设计 1.总体设计 intn=0;// 全局变量 typedefstructBiTNode// 二叉树节点定义 { chardata; structBiTNode*lchild,*rchild; }BiTNode,*BiTree; voidCreateBiTree(BiTree&T);// 创建二叉树 intVisit(chare);// 打印函数 intPreOrderTraverse(BiTreeT);// 先序遍历二叉树 intInOrderTraverse(BiTreeT);// 中序遍历二叉树 intPostOrderTraverse(BiTreeT);// 后序遍历二叉树 voidLevelOrderTraverse(BiTreeT);// 层次遍历二叉树 intNodesum(BiTree&T);// 二叉树节点总数 intBiTreeDepth(BiTreeT);// 返回二叉树的深度 voidLeafCount(BiTreeT);// 统计叶子数并输出叶子结点 typedefstructQNode// 队列节点定义

腾讯文库实验三二叉树的基本运算