package main import . "nc_tools" /* * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */ /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param pRoot TreeNode类 * @return int整型 */ func TreeDepth( pRoot *TreeNode ) int { if pRoot == nil { return 0 } // write code here queue := []*TreeNode{pRoot} depth := 0 for len(queue) > 0 { size := len(queue) for size > 0 { node := queue[0] queue = queue[1:] if node.Left != nil { queue = append(queue, node.Left) } if node.Right != nil { queue = append(queue, node.Right) } size-- } depth++ } return depth }