二叉树遍历C++11实现———前序、中序、后序、层序遍历(非递归)

Makefile:

g++ -std=c++11 -o biTreeTrasverse biTreeTrasverse.cpp

代码:

biTreeTrasverse.cpp
#include 
#include 
#include 

struct node {
    char val;
    node* left;
    node* right;
};

前序遍历

void preOrder(node *root)
{
    std::stack stack;
    node *p = root;
    while ((nullptr != p) || (!stack.empty()))
    {
        while (nullptr != p)
        {
            std::cout << p->val;
            stack.pus

你可能感兴趣的:(数据结构,二叉树,遍历,c++11)