222. Count Complete Tree Nodes
# Medium
class Solution:
def countNodes(self, root: TreeNode) -> int:
# DFS
# edge case
if root == None:
return 0
stack = [root]
n = 0
while len(stack) != 0:
root = stack.pop()
n = n + 1
if root.left != None:
stack.append(root.left)
if root.right != None:
stack.append(root.right)
return nclass Solution:
def countNodes(self, root: TreeNode) -> int:
# BFS
# edge case
if root == None:
return 0
queue = [root]
n = 0
while len(queue) != 0:
l = len(queue)
for i in range(l):
root = queue.pop(0)
n = n + 1
if root.left != None:
queue.append(root.left)
if root.right != None:
queue.append(root.right)
return nLast updated