二叉樹反轉
阿新 • • 發佈:2018-12-16
- 操作給定的二叉樹,將其變換為源二叉樹的映象。
- 思路,建立兩個函式,主函式負責遍歷二叉樹,子函式負責對節點進行轉置。so easy!
/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/ class Solution { public: //一個子函式負責轉置 一個負責遍歷節點 void Mirror(TreeNode *pRoot) { //先序遍歷 if(!pRoot) return ; Transposition(pRoot); Mirror(pRoot->left); Mirror(pRoot->right); } void Transposition(TreeNode *point) { if(point) { TreeNode* temp = point->right; point->right=point->left; point->left=temp; } } };