• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594
            N叉樹層序遍歷,輸出時每一層的節點值要分開存,例如

            Input: root = [1,null,3,2,4,null,5,6]
            Output: [[1],[3,2,4],[5,6]]


            方法一:BFS,開一個list保存每次進隊的頭節點,另開一個list保存該頭節點對應的層高

             1 #429
             2 #Runtime: 89 ms
             3 #Memory Usage: 16.2 MB
             4 
             5 """
             6 # Definition for a Node.
             7 class Node(object):
             8     def __init__(self, val=None, children=None):
             9         self.val = val
            10         self.children = children
            11 """
            12 
            13 class Solution(object):
            14     def levelOrder(self, root):
            15         """
            16         :type root: Node
            17         :rtype: List[List[int]]
            18         """
            19         if not root:
            20             return []
            21         ans = []
            22         q = []
            23         q.append(root)
            24         p = []
            25         p.append(0)
            26         pre = 0
            27         ans.append([root.val])
            28         tp = []
            29         while q:
            30             if tp and p[0] + 1 > pre:
            31                 pre = p[0] + 1
            32                 ans.append(tp)
            33                 tp = []
            34             for i in q[0].children:
            35                 q.append(i)
            36                 tp.append(i.val)
            37                 p.append(p[0] + 1)
            38             q.pop(0)
            39             p.pop(0)
            40         return ans


            方法二:BFS,每次直接處理完同一層在queue里面的所有頭節點,把這些頭節點的所有兒子節點都入隊,同時把這一批頭節點的對應值append到輸出list,耗時比方法一少一點

             1 #429
             2 #Runtime: 42 ms
             3 #Memory Usage: 16.5 MB
             4 
             5 """
             6 # Definition for a Node.
             7 class Node(object):
             8     def __init__(self, val=None, children=None):
             9         self.val = val
            10         self.children = children
            11 """
            12 
            13 class Solution(object):
            14     def levelOrder(self, root):
            15         """
            16         :type root: Node
            17         :rtype: List[List[int]]
            18         """
            19         if not root:
            20             return []
            21         ans = []
            22         q = []
            23         q.append(root)
            24         ans.append([root.val])
            25         while q:
            26             q_sz = len(q)
            27             tp = []
            28             for qq in range(q_sz):
            29                 for i in q[0].children:
            30                     q.append(i)
            31                     tp.append(i.val)
            32                 q.pop(0)
            33             if tp:
            34                 ans.append(tp)
            35         return ans
            四虎国产精品免费久久5151| 日本精品久久久久中文字幕8| 久久久久久A亚洲欧洲AV冫| 日本免费久久久久久久网站| 亚洲成色999久久网站| 婷婷久久综合九色综合绿巨人| 2021最新久久久视精品爱| 亚洲精品乱码久久久久久按摩 | 久久婷婷五月综合97色一本一本| 欧美黑人又粗又大久久久| 91精品国产9l久久久久| 久久久久久久国产免费看| 亚洲AV日韩AV永久无码久久| 热久久这里只有精品| 久久久久久精品成人免费图片| 久久亚洲欧美日本精品| 伊人久久大香线蕉精品不卡| 青青草原综合久久| 亚洲va中文字幕无码久久不卡| 久久精品国产亚洲5555| 久久精品国产精品青草| 亚洲午夜福利精品久久| 国产成人久久精品区一区二区| 四虎久久影院| 久久精品国产一区二区电影| 99久久久精品| 伊人 久久 精品| 久久国产亚洲精品| 一本色综合久久| 久久久久噜噜噜亚洲熟女综合| 久久精品一区二区| 精品综合久久久久久97超人 | www久久久天天com| 久久精品青青草原伊人| 久久久黄色大片| 九九热久久免费视频| 婷婷久久综合九色综合98| 99久久国产主播综合精品 | 色综合久久中文色婷婷| 久久亚洲国产欧洲精品一| 亚洲成色999久久网站|