(二)栈与二叉树遍历的实践
实践目的或任务:通过指导学生上机实践,对栈与二叉树遍历的基本概念及其不同的实现方法的理论得到进步掌握,并对在不同存储结构上实现不同的运算方式和技巧有所体会。实践基本要求:
1、了解实验目的及实验原理;
2、编写程序,并附上程序代码和结果图;
3、总结在编程过程中遇到的问题、解决办法和收获。
实践的内容或要求:
1、基本操作(必做部分)
(1)编写函数,分别采用链式存储和顺序存储实现栈的初始化、入栈、出栈操作;编写函数,采用链式存储实现队列的初始化、入队、出队操作
(2)编写函数,建立二叉树的二叉链表;实现二叉树的前中后序的递归和非递归遍历算法。
2、四则运算表达式的求值系统设计(四选一选做部分)
(1)结合基本操作,建立表达式二叉树,输出树的前中后序遍历的结果,计算表达式的值。
(2)当用户输入一个合法的算术表达式后,能够返回正确的结果。能够计算的运算符包括:加、减、乘、除、括号;能够计算的操作数要求在实数范围内;对于异常表达式能给出错误提示。
(3)设计并实现人机交互友好的界面或菜单。
链接:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111
提取码:1111