222. 完全二叉树的节点个数 golang

222. 完全二叉树的节点个数

给出一个完全二叉树,求出该树的节点个数。

说明:

完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。

示例:

输入: 
    1
   / \
  2   3
 / \  /
4  5 6

输出: 6

Code

func countNodes(root *TreeNode) int {
	var sum int
	dfs(root, &sum)
	return sum
}
func dfs(root *TreeNode, sum *int) {
	if root == nil {
		return
	}
	*sum++
	dfs(root.Left, sum)
	dfs(root.Right, sum)
}
发布了399 篇原创文章 · 获赞 266 · 访问量 41万+

猜你喜欢

转载自blog.csdn.net/csdn_kou/article/details/105300961