1、 按先序次序输入二叉树中结点的值(一个字符),利用某个特殊字符(例如`@`)表示空树,生成二叉树的二叉链表存储结构。
2、 按先、中、后序递归遍历二叉树,之后结合栈的应用,将中序遍历算法改为非递归算法。
3、利用二叉树的递归算法求二叉树的高度 。
4、利用二叉树的递归算法求二叉树的叶子个数。
5、利用队列实现二叉树的层次遍历。
代码:
#include <bits/stdc++.h>
using namespace std;
typedef struct Node{
char val;
Node* ls;
Node* rs;
}Node;
typedef struct BTree{
Node* root;
BTree(){
root=NULL;
}
public:
void vis(Node *a){
printf("%c ",a->val);
re