Soruda bize bir binary tree veriliyor ve bu binary tree dallarından başlayarak köke doğru level level değerlerini yazdırmamız isteniyor.
Bu soru leetcode 102’ye çok benzemektedir.
Tüm ağacı BfS kullanarak level level gezeriz ve değerleri bir listeye ekleriz.
Elimizdeki liste kökten dala doğru oluşmuştur.Ama bizden dallardan köke uzanan bir sonuç beklenmektedir.Tek yapmamız gereken bu listeyi terse çevirerek sonucu bulmaktır.
# 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 = rightclassSolution:deflevelOrderBottom(self,root:TreeNode)->List[List[int]]:ifnotroot:return[]queue=collections.deque([root])res=[]whilequeue:tmp=[]foriinrange(len(queue)):node=queue.popleft()tmp.append(node.val)ifnode.left:queue.append(node.left)ifnode.right:queue.append(node.right)res.append(tmp)returnres[::-1]