1367 二叉樹中的列表C

2021-10-07 17:14:04 字數 670 閱讀 7148

二叉樹資料結構如下

//definition of binary tree node

struct treenode

};

本題需要注意一點是子節點的匹配結果是受到父節點匹配結果影響的。分為兩種情況:父節點匹配成功、父節點匹配失敗

父節點匹配成功的情況

tree空

tree不空

list空

true

true

list不空

false

繼續匹配

父節點匹配失敗的情況

tree空

tree不空

list空

false

false

list不空

false

繼續匹配

所以只用乙個遞迴函式是無法實現的。首先是單個節點的匹配,乙個深度優先遍歷

bool

dfs(listnode* head, treenode* root)

是否匹配成功需要結合單個節點的匹配和後續子樹的匹配情況

bool

issubpath

(listnode* head, treenode* root)

1367 二叉樹中的列表

題目描述 給你一棵以 root 為根的二叉樹和乙個 head 為第乙個節點的鍊錶。如果在二叉樹中,存在一條一直向下的路徑,且每個點的數值恰好一一對應以 head 為首的鍊錶中每個節點的值,那麼請你返回 true 否則返回 false 一直向下的路徑的意思是 從樹中某個節點開始,一直連續向下的路徑。示...

LeetCode 1367 二叉樹中的列表

給你一棵以 root 為根的二叉樹和乙個 head 為第乙個節點的鍊錶。如果在二叉樹中,存在一條一直向下的路徑,且每個點的數值恰好一一對應以 head 為首的鍊錶中每個節點的值,那麼請你返回 true 否則返回 false 一直向下的路徑的意思是 從樹中某個節點開始,一直連續向下的路徑。示例 1 注...

leetcode1367 二叉樹中的列表

給你一棵以 root 為根的二叉樹和乙個 head 為第乙個節點的鍊錶。如果在二叉樹中,存在一條一直向下的路徑,且每個點的數值恰好一一對應以 head 為首的鍊錶中每個節點的值,那麼請你返回 true 否則返回 false 一直向下的路徑的意思是 從樹中某個節點開始,一直連續向下的路徑。示例 1 輸...