刷题之二叉树----判断一棵树是否为完全二叉树

来源:互联网 发布:安卓应用知乎 编辑:程序博客网 时间:2024/06/12 00:46

思路:



好的,上代码:

<span style="font-size:18px;">class CheckCompletion {    public boolean chk(TreeNode root) {        // write code here        if(root == null)            return true;        Queue<TreeNode> q = new LinkedList<TreeNode>();        q.offer(root);        boolean flag = true;        while(!q.isEmpty()){            TreeNode cur = q.poll();            if((cur.left == null &&cur.right !=null) ||                    (!flag && (cur.left!=null || cur.right!=null))){                return false;            }            if(cur.left != null)                q.offer(cur.left);            else                flag = false;            if(cur.right != null)                q.offer(cur.right);            else                flag = false;        }        return true;    }}</span>


0 0
原创粉丝点击