給你一棵以 root 為根的二叉樹和乙個 head 為第乙個節點的鍊錶。
如果在二叉樹中,存在一條一直向下的路徑,且每個點的數值恰好一一對應以 head 為首的鍊錶中每個節點的值,那麼請你返回 true ,否則返回 false 。
一直向下的路徑的意思是:從樹中某個節點開始,一直連續向下的路徑。
示例 1:
輸入:head = [4,2,8], root = [1,4,4,null,2,2,null,1,null,6,8,null,null,null,null,1,3]
輸出:true
解釋:樹中藍色的節點構成了與鍊錶對應的子路徑。
示例 2:
輸入:head = [1,4,2,6], root = [1,4,4,null,2,2,null,1,null,6,8,null,null,null,null,1,3]
輸出:true
示例 3:
輸入:head = [1,4,2,6,8], root = [1,4,4,null,2,2,null,1,null,6,8,null,null,null,null,1,3]
輸出:false
解釋:二叉樹中不存在一一對應鍊錶的路徑。
二叉樹和鍊錶中的每個節點的值都滿足 1 <= node.val <= 100 。
鍊錶包含的節點數目在 1 到 100 之間。
二叉樹包含的節點數目在 1 到 2500 之間。
這個題的關鍵在於兩個遞迴函式。
1.第乙個遞迴issubpathhelper,以輸入節點作為鍊錶的頭節點,向下進行遞迴搜尋。
2.第二個遞迴issubpath,以當前節點作為第乙個遞迴的輸入,以當前節點左子節點,當前節點右子節點進行遞迴。
/**
* definition for singly-linked list.
* public class listnode
* }*//**
* definition for a binary tree node.
* public class treenode
* }*/class solution
public boolean issubpathhelper(listnode head, treenode root)
}
LeetCode 1367 二叉樹中的列表
給你一棵以 root 為根的二叉樹和乙個 head 為第乙個節點的鍊錶。如果在二叉樹中,存在一條一直向下的路徑,且每個點的數值恰好一一對應以 head 為首的鍊錶中每個節點的值,那麼請你返回 true 否則返回 false 一直向下的路徑的意思是 從樹中某個節點開始,一直連續向下的路徑。示例 1 注...
1367 查詢二叉樹 tree a
已知一棵二叉樹用鄰接表結構儲存,中序查詢二叉樹中值為x的結點,並指出是第幾個結點。例 如圖二叉樹的資料檔案的資料格式如下 第一行n為二叉樹的結點個樹,n 100 第二行x表示要查詢的結點的值 以下第一列資料是各結點的值,第二列資料是左兒子結點編號,第三列資料是右兒子結點編號。乙個數即查詢的結點編號。...
1367 查詢二叉樹 tree a
題目描述 已知一棵二叉樹用鄰接表結構儲存,中序查詢二叉樹中值為x的結點,並指出是第幾個結點。例 如圖二叉樹的資料檔案的資料格式如下 輸入 第一行n為二叉樹的結點個樹,n 100 第二行x表示要查詢的結點的值 以下第一列資料是各結點的值,第二列資料是左兒子結點編號,第三列資料是右兒子結點編號。輸出 乙...