text: '''
  Source : https://leetcode.com/problems/maximum-depth-of-binary-tree/
  Author : Yuan Wang
  Date   : 2018-07-21
  
  /********************************************************************************** 
  *Given a binary tree, find its maximum depth.
  *
  *The maximum depth is the number of nodes along the longest path from the root node 
  *down to the farthest leaf node.
  *
  *Note: A leaf is a node with no children.
  *
  *Example:
  *
  *Given binary tree [3,9,20,null,null,15,7],
  *
  *	3
  *   / \
  *  9  20
  *	/  \
  *   15   7
  *return its depth = 3.
  **********************************************************************************/
  '''
  
  def maxDepth(self, root):
  	"""
  	:type root: TreeNode
  	:rtype: int
  	"""
  	depth=0
  	return self.calDepth(root,depth)
  	
  def calDepth(self,root,depth):
  	if root:
  		depth+=1
  		return max(self.calDepth(root.left,depth),self.calDepth(root.right,depth))
  	
  	return depth