2023.7.7
题意要求是最底层的节点,则用层序遍历是最合适的,每一层遍历将元素放入一个数组中,等到最后一层遍历完之后,取这个数组的第一个元素即为所求节点值。 下面上代码:
class Solution {
public:
int findBottomLeftValue(TreeNode* root) {
queue<TreeNode*> que;
vector<int> v;
que.push(root);
while(!que.empty())
{
int size = que.size();
v={};
while(size--)
{
TreeNode* node = que.front();
que.pop();
v.push_back(node->val);
if(node->left) que.push(node->left);
if(node->right) que.push(node->right);
}
}
return v[0];
}
};