17.leetcode104_maximum_depth_of_binary_tree

1.题目描述

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.

给出一个二叉树,找出它的最大深度

2.题目分析

运用递归思想,在“左叉”“右叉”间找出最大的深度

3.解题思路

 1 # Definition for a binary tree node.
 2 # class TreeNode(object):
 3 #     def __init__(self, x):
 4 #         self.val = x
 5 #         self.left = None
 6 #         self.right = None
 7 
 8 class Solution(object):
 9     def maxDepth(self, root):
10         """
11         :type root: TreeNode
12         :rtype: int
13         """
14         depth=0 #定义当前depth为0
15         def dep(root,depth): #自定义dep()函数找出最深深度
16             if root==None: #遇到空节点,返回depth
17                 return depth
18             else:
19                 depth+=1 #不是空节点,深度+1
20                 return max(dep(root.right,depth),dep(root.left,depth)) #返回左右叉中的最大深度
21         if root==None: #判断否为空树杈
22             return 0
23         else:
24             return dep(root,depth) #调用dep函数

 

posted @ 2018-02-08 23:15  vlice  阅读(77)  评论(0编辑  收藏  举报