Count Complete Tree Nodes
Basic Idea:
Python Code:
class Solution:
def countNodes(self, root):
"""
:type root: TreeNode
:rtype: int
"""
def getHight(root):
if not root: return 0
leftHight = getHight(root.left)
return leftHight + 1
if not root: return 0
leftHight = getHight(root.left)
rightHight = getHight(root.right)
if leftHight == rightHight:
return 2 ** (leftHight) + self.countNodes(root.right)
else:
return self.countNodes(root.left) + self.countNodes(root.right) + 1