leetcode 111 Minimum Depth of Binary Tree
求二叉树最小深度。
递归非常简单,见最大深度。
这里用BFS。
int minDepth(TreeNode* root) { if (root == NULL) return 0; deque<TreeNode*> q; int now = 1; int depth = 0; q.push_back(root); while (!q.empty()) { int size = now; now = 0; for (int i = 0; i < size; ++i) { TreeNode* n = q.front(); q.pop_front(); if (n->left == NULL && n->right == NULL) return ++depth; if (n->left) { q.push_back(n->left); now++; } if (n->right) { q.push_back(n->right); now++; } } depth++; } }
【本文章出自博客园willaty,转载请注明作者出处,误差欢迎指出~】