【LeetCode】100. Same Tree 解題報告(Python)

題目分析:

給定兩個二叉樹,編寫一個函數來檢驗它們是否相同。如果兩個樹在結構上相同,並且節點具有相同的值,則認爲它們是相同的。
示例 1:
輸入:
在這裏插入圖片描述
輸出: true

示例 2:
輸入:
在這裏插入圖片描述
輸出: false

解題思路:

這一題的本質還是遍歷,我用的遞歸遍歷去判斷是否相同,我想棧應該也能解決,但是本題遞歸效率還是很高的,所以用遞歸解決問題。

提交代碼:(遞歸,Runtime: 36 ms, faster than 82.13% )

class Solution:
    def isSameTree(self, p: TreeNode, q: TreeNode) -> bool:
        if p == None and q == None: return True
        if p and q and p.val == q.val:
            return self.isSameTree(p.left, q.left) and self.isSameTree(p.right, q.right)
        return False

參考博客

附:

  1. 雖然這是第100題了但是感覺自己進步一般,我相信這是個持之以恆的過程,後續也會正常刷下去的
  2. 很多代碼都參考了網上的(我也儘可能標記了參考博客,如有遺漏還請見諒),也有部分自己寫的和網上的重合我相信這是無法避免的
  3. 後面的源碼將不再寫成測試代碼,直接是提交代碼了
  4. 幸福並不是男子漢所該追求的,加油,與君共勉
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章