From bae51a22bf6ed08a464027bfc4d36432ef9d3da3 Mon Sep 17 00:00:00 2001 From: sahasourav17 Date: Thu, 24 Aug 2023 21:09:46 +0600 Subject: [PATCH 1/2] Create: 0103-binary-tree-level-order-traversal.py --- ...inary-tree-zigzag-level-order-traversal.py | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 python/0103-binary-tree-zigzag-level-order-traversal.py diff --git a/python/0103-binary-tree-zigzag-level-order-traversal.py b/python/0103-binary-tree-zigzag-level-order-traversal.py new file mode 100644 index 000000000..d7eac087e --- /dev/null +++ b/python/0103-binary-tree-zigzag-level-order-traversal.py @@ -0,0 +1,24 @@ +# Definition for a binary tree node. +# class TreeNode: +# def __init__(self, val=0, left=None, right=None): +# self.val = val +# self.left = left +# self.right = right +class Solution: + def zigzagLevelOrder(self, root: Optional[TreeNode]) -> List[List[int]]: + if root is None: + return + result, zigzagDirection = [], 1 + q = [root] + while q: + level, queueLength = [], len(q) + for i in range(queueLength): + node = q.pop(0) + level.append(node.val) + if node.left: + q.append(node.left) + if node.right: + q.append(node.right) + result.append(level[::zigzagDirection]) + zigzagDirection *= -1 + return result From efa71df25c402a67354c17491126c5369996d933 Mon Sep 17 00:00:00 2001 From: sahasourav17 Date: Thu, 24 Aug 2023 22:39:11 +0600 Subject: [PATCH 2/2] Create: 0108-convert-sorted-array-to-binary-search-tree.py --- ...-convert-sorted-array-to-binary-search-tree.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 python/0108-convert-sorted-array-to-binary-search-tree.py diff --git a/python/0108-convert-sorted-array-to-binary-search-tree.py b/python/0108-convert-sorted-array-to-binary-search-tree.py new file mode 100644 index 000000000..5ed126cf6 --- /dev/null +++ b/python/0108-convert-sorted-array-to-binary-search-tree.py @@ -0,0 +1,15 @@ +# Definition for a binary tree node. +# class TreeNode: +# def __init__(self, val=0, left=None, right=None): +# self.val = val +# self.left = left +# self.right = right +class Solution: + def sortedArrayToBST(self, nums: List[int]) -> Optional[TreeNode]: + if not nums: + return None + mid = len(nums)//2 + root = TreeNode(nums[mid]) + root.left = self.sortedArrayToBST(nums[:mid]) + root.right = self.sortedArrayToBST(nums[mid+1:]) + return root pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy