diff --git a/C++/All_Possible_Full_Binary_Trees.cpp b/C++/All_Possible_Full_Binary_Trees.cpp new file mode 100644 index 0000000..a97709e --- /dev/null +++ b/C++/All_Possible_Full_Binary_Trees.cpp @@ -0,0 +1,42 @@ +/** + * 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: + vector allPossibleFBT(int n) { + vector dp[21]; + + TreeNode *temp; + temp = new TreeNode; + *temp = TreeNode(); + dp[1].push_back(temp); + + for(int i=3;i<20;i+=2) + { + for(int j=1; j