美文网首页
二叉树打印偶数

二叉树打印偶数

作者: zlrs | 来源:发表于2019-08-19 21:50 被阅读0次
    #include <stdio.h>
    
    struct Node {
        int val;
        struct Node * left, right;
    };
    
    void travel(struct Node *head, bool top=true) {
        static bool flag_has_even;
        if (top) flag_has_even = false;
    
        if (head) {
            if (head->val & 1 == 0) {
                flag_has_even = true;
                printf("%d ", head->val);  // 打印偶数
            }
    
            travel(head->left, false);
            travel(head->right, false);
        }
    
    
        if (top && !flag_has_even){
            printf("没有偶数");
        }
    }
    
    /*
    TEST:
    可能输入
    1. NULL
    2. 单节点:奇数 偶数
    3. 双节点:奇NULL偶 奇偶NULL 偶NULL奇 偶奇NULL
    4. 三节点
    */
    
    
    

    相关文章

      网友评论

          本文标题:二叉树打印偶数

          本文链接:https://www.haomeiwen.com/subject/slkysctx.html