刷題系類 - Python判斷二叉樹是否存在一條路徑滿足和值要求
繼續刷題,判斷二叉樹是否存在一條路徑滿足和值要求。
這個名稱描述很複雜,其實很簡單。如下圖,判斷是否有一個從根節點到葉子節點路徑,和值為8, 就是1 -> 2-> 5。
這個用遞迴來做很簡單,就是判斷輸入節點的值和輸入值是否一樣,如果是而且當前節點為葉子節點,返回True,如果當前節點為空,返回False; 如果都不是,則遞迴到輸入節點子節點,並且輸入值為sum減去當前節點。
這裡使用or 來判單,只有有一組路徑複合就可以返回True
# Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: def hasPathSum(self, root: TreeNode, sum: int) -> bool: if root == None: return False else: if root.left == None and root.right == None and root.val == sum: return True else: return self.hasPathSum(root.left,sum-root.val) or self.hasPathSum(root.right,sum-root.val)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22259926/viewspace-2674079/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 刷題系列 - Python判斷是否映象對稱二叉樹Python二叉樹
- 判斷二叉樹是否為滿二叉樹二叉樹
- shell判斷系統路徑中是否存在空格
- Python科研武器庫 - 檔案/路徑操作 - 判斷路徑是否存在Python
- sh指令碼判斷路徑是否存在指令碼
- Laravel 5 判斷條件是否存在Laravel
- 牛客題霸 [二叉樹中是否存在節點和為指定值的路徑] C++題解/答案二叉樹C++
- python 判斷檔案是否存在Python
- 記一次判斷值是否存在遇到的神奇問題
- map判斷值是否存在需要注意的問題
- LeetCode題解(Offer26):判斷二叉樹A是否為二叉樹B的子樹(Python)LeetCode二叉樹Python
- 如何判斷一棵樹是否是二叉平衡樹~
- 遞迴判斷是否二叉平衡樹遞迴
- LeetCode題解(Offer28):判斷二叉樹是否左右對稱(Python)LeetCode二叉樹Python
- Python中怎麼判斷路徑是否為目錄?Python
- 【C++】判斷一顆二叉樹是否對稱C++二叉樹
- LC49判斷二叉樹是否相等二叉樹
- canvas判斷點是否在路徑內Canvas斷點
- PbootCMS整理判斷是否連結賦值各種條件判斷和標籤boot賦值
- sqlserver判斷欄位值是否存在某個字元SQLServer字元
- nginx判斷路徑是否含有某個引數做判斷Nginx
- 【LeetCode】1496. 判斷路徑是否相交(Java)LeetCodeJava
- leetcode------給定一個二叉樹和一個值sum,判斷是否有從根節點到葉子節點的節點值之和等於sum 的路徑,LeetCode二叉樹
- 面試題34:二叉樹中和為某一值的路徑面試題二叉樹
- [Python手撕]判斷平衡二叉樹Python二叉樹
- JavaScript 判斷函式是否存在JavaScript函式
- golang判斷檔案是否存在Golang
- MySQL判斷表名是否存在MySql
- QJsonObject判斷欄位是否存在JSONObject
- postgresql如何判斷表是否存在SQL
- 「判斷路線成圈」python之leetcode刷題|005PythonLeetCode
- 如果透過python的sdk pymilvus 判斷一個 collection 是否存在?Python
- 判斷一個物件是否為空物件,判斷一個物件中是否有空值物件
- 求陣列中是否存在滿足特定和的兩個數字(python & Js)陣列PythonJS
- 二叉樹路徑總和二叉樹
- [Python手撕]判斷二叉搜尋樹Python
- Class.isAssignableFrom判斷A類是否可賦值給B類賦值
- 判斷objectStore物件倉庫是否存在Object物件