二叉树打印叶子节点||打印分支节点

思路:

二叉树的二叉树的常见遍历方式就是前序中序后序。
我们可以吧遍历看成模板,然后对相应的数据进行分析。

分析(IF)

要分析的是叶子节点和分支节点的不同。
分支节点:他的左右节点存在且至少存在一个不为空
反之,分析叶子节点:叶子节点的左右节点必须均不为空。

代码:

#include <iostream>
using namespace std;
struct node{
    int data;
    node *left;
    ndoe *right;
}
void PrintBranch(node *tree){//打印分支节点
    if(!tree){
    return ;
    }
    if(tree->left||tree->right)
    cout<<tree->data<<endl;
    PrintBranch(tree->left);
    PrintfBranch(tree->right);
}
void PrintLeaves(node *tree){//打印叶子节点
    if(!tree){
    return ;
    }
    if(tree->left==NULL&&tree->right==NULL)
     cout<<tree->data<<endl;
    PrintLeaves(tree->left);
    PrintLeaves(tree->right);
}
突然感觉自己入了Linux的坑,天天鼓捣破Pi板

版权声明:本文为sdlwzzm19971226原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。