二叉树的相关算法 (前序、中序、后序,递归、非递归,广度、深度遍历)
/********************************************************************
* 程序说明:二叉树的相关算法
* 1. 二叉树的前序递归遍历 preOrderRecTra()
* 2. 二叉树的前序非递归遍历 preOrderNonRecTra()
* 3. 二叉树的中序递归遍历 midOrderRecTra()
* 4. 二叉树的中序非递归遍历 midOrderNonRecTra()
* 5. 二叉树的后序递归遍历 postOrderRecTra()
* 6. 二叉树的后序非递归遍历 postOrderNonRecTra()
* 7. 广度优先非递归遍历 bfs()
* 8. 深度优先非递归遍历 dfs()
* author:Raptor_2017
********************************************************************/
#define LOCAL
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<stack>
#include<queue>
using namespace std;
const int MAXLEN = 100;
typedef struct tNode {
int have_value;
int v;
struct tNode *left, *right;
}node;
node *root;
/*
* 申请一个新的节点空间
*/
node* newNode() {
node *u = (nod