CP #30: Maximum Width of Binary Tree Problemi
Problem surada . Cozum Ilk aklima gelen cozum sekli, BFS ile tree'yi traverse edip, her bir levelin width'ine bakmak. Ama aralardaki None'lari da hesaba katmamiz gerektigi icin, kucuk bir modifiye ile, bir None node icin, iki tane None child eklmem lazim queue'ya. Bu sekilde None olan parent node'larin cocuklarini da kaybetmemis olacagiz. Ama bir tehlike var. Eger None olan node'lar icin 2 tane de None cocuk eklersek, bu dongu hicbir zaman bitmez. Queue sonsuza kadar uzar. Bunun onune gecmek icin eger bir level'deki node'larin tamami None ise, donguyu orada bitirmemiz lazim. Konusarak anlatmasi zor, koda gecelim: from collections import deque def widthOfBinaryTree(self, root: TreeNode) -> int: q = deque([root]) max_width = 0 # que'de eleman oldugu surece while q: lenq = len(q) # mevcut leveldeki tum elemanlari i...