zoukankan      html  css  js  c++  java
  • 222. Count Complete Tree Nodes

    package LeetCode_222
    
    import java.util.*
    
    /**
     * 222. Count Complete Tree Nodes
     * https://leetcode.com/problems/count-complete-tree-nodes/description/
     *
     * Given a complete binary tree, count the number of nodes.
    
    Note:
    Definition of a complete binary tree from Wikipedia:
    In a complete binary tree every level, except possibly the last, is completely filled, and all nodes in the last level are as far left as possible. It can have between 1 and 2h nodes inclusive at the last level h.
    
    Example:
    Input:
         1
       /  
      2    3
     /   /
    4  5 6
    
    Output: 6
     * */
    
    class TreeNode{
        var left:TreeNode?=null
        var right:TreeNode?=null
    }
    class Solution {
        /*
        * solution:BFS,Time complexity:O(n), Space complexity:O(n)
        * */
        fun countNodes(root: TreeNode?): Int {
            if (root==null){
                return 0
            }
            val queue = LinkedList<TreeNode>()
            queue.offer(root)
            var result = 1
            while (queue.isNotEmpty()){
                val size = queue.size
                for (i in 0 until size){
                    val cur = queue.pop()
                    if (cur.left!=null){
                        queue.offer(cur.left)
                        result++
                    } else {
                        return result
                    }
                    if (cur.right!=null){
                        queue.offer(cur.right)
                        result++
                    } else {
                        return result
                    }
                }
            }
            return result
        }
    }
  • 相关阅读:
    demo12-回到顶部
    demo11-友情链接
    demo10-超链接标签
    demo09-程序员练习
    demo08-图片标签
    demo07-盒子标签
    demo06-字体标签
    demo05-换行标签
    转&nbsp;j2ee&nbsp;.线程池.对象池,连接池
    几种开源Java&nbsp;Web容器线程池…
  • 原文地址:https://www.cnblogs.com/johnnyzhao/p/13222562.html
Copyright © 2011-2022 走看看