题解 | #牛群的树形结构展开#
牛群的树形结构展开
https://www.nowcoder.com/practice/07caea5438394f58afbe72cbe2eb2189
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} * }; */ class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param root TreeNode类 * @return TreeNode类 */ vector<int> nums; void inorder(TreeNode* root) { if (root == nullptr) return; nums.push_back(root->val); inorder(root->left); inorder(root->right); } TreeNode* flattenTree(TreeNode* root) { // write code here inorder(root); int len = nums.size(); TreeNode* dummy = new TreeNode(-1); TreeNode* pre = dummy; for (int i = 0; i < len; i++) { TreeNode* t = new TreeNode(nums[i]); pre->right = t; pre = pre->right; } return dummy->right; } };