搜索微信公衆號:'AI-ming3526'或者'計算機視覺這件小事' 獲取更多算法、機器學習乾貨node
csdn:https://blog.csdn.net/baidu_31657889/python
csdn:https://blog.csdn.net/abcgkj/git
github:https://github.com/aimi-cn/AILearnersgithub
這是由LeetCode官方推出的的經典面試題目清單~
這個模塊對應的是探索的初級算法~旨在幫助入門算法。咱們第一遍刷的是leetcode推薦的題目。
查看完整的劍指Offer算法題解析請點擊github連接:
github地址面試
給定一個二叉樹,找出其最大深度。算法
二叉樹的深度爲根節點到最遠葉子節點的最長路徑上的節點數。編程
說明: 葉子節點是指沒有子節點的節點。微信
示例:機器學習
給定二叉樹 [3,9,20,null,null,15,7],學習
3
/ \
9 20
/ \
15 7複製代碼
返回它的最大深度 3 。
使用遞歸的方法解決此題。直接上圖:
咱們能夠看到樹的深度H等於1加上左右兩個左右子樹深度的最大值。
因此咱們直接使用遞歸方法處理~看代碼
python
# Definition for a binary tree node.
# class TreeNode(object):
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution(object):
def maxDepth(self, root):
"""
:type root: TreeNode
:rtype: int
"""
if root is None:
return 0
count = max(self.maxDepth(root.left),self.maxDepth(root.right)) + 1
return count複製代碼
AIMI-CN AI學習交流羣【1015286623】 獲取更多AI資料
分享技術,樂享生活:咱們的公衆號計算機視覺這件小事每週推送「AI」系列資訊類文章,歡迎您的關注!
本文由博客一文多發平臺 OpenWrite 發佈!