美文网首页
剑指 Offer II 045. 二叉树最底层最左边的值

剑指 Offer II 045. 二叉树最底层最左边的值

作者: 邦_ | 来源:发表于2022-06-23 09:44 被阅读0次

层级遍历啊= =。。 用数组记录每一层的节点 那么。。 最后一层的第一个就是需要的左节点


func findBottomLeftValue(_ root: TreeNode?) -> Int {
        
      
        var array = Array<TreeNode>()
        var levArray = Array<Array<TreeNode>>()
        array.append(root!)
        levArray.append(array)
        var count = 1
        while !array.isEmpty {
            let node = array.removeFirst()
            count -= 1
            if let left = node.left {
                array.append(left)
            }
            if let right = node.right {
                array.append(right)
            }
            if count == 0 {
                count = array.count
                if array.count > 0 {
                    levArray.append(array)
                }
            }
            
        }
                
    
        return (levArray.last?.first?.val)!
    }







相关文章

网友评论

      本文标题:剑指 Offer II 045. 二叉树最底层最左边的值

      本文链接:https://www.haomeiwen.com/subject/enlwertx.html