From 8162210794944be39d85eef73e447880bf8abe36 Mon Sep 17 00:00:00 2001 From: wsl Date: Mon, 26 Dec 2022 21:44:55 +0800 Subject: [PATCH] =?UTF-8?q?python=20=E5=B1=82=E5=BA=8F=E9=81=8D=E5=8E=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codes/python/chapter_tree/binary_tree_bfs.py | 35 ++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/codes/python/chapter_tree/binary_tree_bfs.py b/codes/python/chapter_tree/binary_tree_bfs.py index 9ae1b3594..541b6b704 100644 --- a/codes/python/chapter_tree/binary_tree_bfs.py +++ b/codes/python/chapter_tree/binary_tree_bfs.py @@ -5,6 +5,37 @@ Author: Krahets (krahets@163.com) """ import sys, os.path as osp -sys.path.append(osp.dirname(osp.dirname(osp.abspath(__file__)))) -from include import * +from codes.python.include import * + +sys.path.append(osp.dirname(osp.dirname(osp.abspath(__file__)))) + +# from include import * +def levelOrder(root: [TreeNode]) -> list[list[int]]: + + res = [] + if not root: + return res + from collections import deque + q = deque([root]) + while q: + list = [] + size = len(q) + for _ in range(size): + cur = q.popleft() + list.append(cur.val) + if cur.left: + q.append(cur.left) + if cur.right: + q.append(cur.right) + res.append(list) + return res + + +""" Driver Code """ + +if __name__ == '__main__': + arr = [3, 9, 20, None, None, 15, 7] + root = list_to_tree(arr) + list = levelOrder(root) + print(list) \ No newline at end of file