Re: [闲聊] 每日leetcode

楼主: dont   2024-09-07 14:16:24
1367. Linked List in Binary Tree
## 思路
扫整个tree
用recursion检查tree_node跟lst_node
如果lst_node跑完就回传True
## Code
```python
class Solution:
def isSubPath(self, head: Optional[ListNode], root: Optional[TreeNode])
-> bool:
def check(tree_node, lst_node):
if not lst_node:
return True
if not tree_node:
return False
if tree_node.val != lst_node.val:
return False
return check(tree_node.left, lst_node.next) or
check(tree_node.right, lst_node.next)
queue = deque([root])
while queue:
node = queue.popleft()
if check(node, head):
return True
if node.left:
queue.append(node.left)
if node.right:
queue.append(node.right)
return False
```
作者: DJYOMIYAHINA (通通打死)   2024-09-07 14:17:00
别卷了
作者: sustainer123 (caster)   2024-09-07 14:20:00
大师

Links booklink

Contact Us: admin [ a t ] ucptt.com