diff --git a/513 Find_Bottom_left_Tree_value.cpp b/513 Find_Bottom_left_Tree_value.cpp new file mode 100644 index 0000000..4ac57bb --- /dev/null +++ b/513 Find_Bottom_left_Tree_value.cpp @@ -0,0 +1,36 @@ +/** + * Definition for a binary tree node. + * struct TreeNode { + * int val; + * TreeNode *left; + * TreeNode *right; + * TreeNode() : val(0), left(nullptr), right(nullptr) {} + * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} + * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} + * }; + */ +class Solution { +public: + int findBottomLeftValue(TreeNode* root) { + queue que; + que.push(root); + vector> res; + while(!que.empty()){ + int size = que.size(); + vector row; + for(int i=0;ival); + if(front->left!=NULL){ + que.push(front->left); + } + if(front->right!=NULL){ + que.push(front->right); + } + } + res.push_back(row); + } + return res[res.size()-1][0]; + } +};