可以利用层次遍历,记录层数即二叉树的深度(注意统计每一层结点的个数,以免影响记录层数)
//借助层次遍历,非递归
class Solution {
public:
int TreeDepth(TreeNode* pRoot)
{
queue<TreeNode*> q;
if (!pRoot) return 0;
q.push(pRoot);
int level = 0;
while (!q.empty()) {
int len = q.size();
level++;
while (len--) {
TreeNode* tem = q.front();