树与二叉树的常见操作
实验学时 4学时
背景知识:二叉树、树的存储、建立、遍历及其应用。
目的要求:
1.掌握二叉树的存储实现。
2.掌握二叉树的遍历思想。
3.掌握二叉树的常见算法的程序实现。掌握二叉树的线索化及线索二叉树的遍历算法
4.熟悉树的各种存储结构及其特点,掌握树和森林与二叉树的转换方法。
实验内容:
1.输入字符序列,建立二叉链表。
2.中序遍历二叉树:递归算法。
3.中序遍历二叉树:非递归算法。(最好也能实现先序,后序非递归算法)
4.求二叉树的高度 。
5.求二叉树的叶子个数。
*6.将二叉链表视为森林的孩子兄弟链表,计算森林中叶子个数。
*7.建立中序线索二叉树,并实现中序遍历。
8.借助队列实现二叉树的层次遍历。
9.在主函数中设计一个简单的菜单,分别调试上述算法。
*10.综合训练:为N个权值设计哈夫曼编码。
实验说明
1.类型定义 //二叉链表存储