(写给未来遗忘的自己)
题目:
代码:
class Solution {
public:
int countNodes(TreeNode* root) {
queue<TreeNode*>node_que;
if(root==nullptr) return 0;
node_que.push(root);
int result;
while(!node_que.empty()){
int layer_size=node_que.size();
for(int i=0;i<layer_size;i++){
TreeNode* root_t=node_que.front();
result++;
node_que.pop();
if(root_t->left!=nullptr) node_que.push(root_t->left);
if(root_t->right!=nullptr) node_que.push(root_t->right);
}
}
return result;
}
};
思路:
整体的思绪和下面的这个一直,记录弹出的数的个数就是最终的个数。(此方法对于所有的二叉树都适用,不针对完全二叉树做处理)