zoukankan      html  css  js  c++  java
  • 判断二叉树是否是完全二叉树

    题目:

        给出一个二叉树,判断是否是完全二叉树。

    分析:我们都知道完全二叉树是指最后一层左边是满的,右边可能慢也不能不满,然后其余层都是满的,根据这个特性,利用层遍历,

    如果我们当前遍历到了NULL结点即叶结点,那么后续如果还有非叶结点,就说明是非完全二叉树,所以利用队列,代码比较简单了。

    View Code
    bool is_completeTree(Node* r)
    {
    queue<Node*> q;
    if(NULL != r)
    {
    q.push(r);
    Node* cur = NULL;
    bool flag = false;
    while(!q.empty())
    {
    cur = q.front();
    q.pop();
    if(cur)
    {
    if(flag)
    return false;
    q.push(cur->left);
    q.push(cur->right);
    }
    else
    flag = true;
    }
    return true;
    }
    return true;
    }



  • 相关阅读:
    such用法
    divorce用法
    towel用法
    go for用法
    catch on用法
    incredibly用法
    mess用法
    dentist用法
    steer clear of用法
    incredible
  • 原文地址:https://www.cnblogs.com/buptLizer/p/2425097.html
Copyright © 2011-2022 走看看