LeetCode-----翻转二叉树
生活随笔
收集整理的這篇文章主要介紹了
LeetCode-----翻转二叉树
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目——翻轉二叉樹
翻轉一棵二叉樹。
示例:
輸入:
4/ \2 7/ \ / \ 1 3 6 9輸出:
4/ \7 2/ \ / \ 9 6 3 1備注:
這個問題是受到 Max Howell 的 原問題 啟發的 :
解答
c++
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:TreeNode* invertTree(TreeNode* root) {if (root == NULL) {return root;}auto tmp = root->left;root->left = root->right;root->right = tmp;invertTree( root->left);invertTree( root->right);return root;} };分析
這個題主要運用的是遞歸的思想。對于非空節點,將他的左右分支進行翻轉,是空節點的話就返回。
轉載于:https://www.cnblogs.com/qq874455953/p/9589205.html
總結
以上是生活随笔為你收集整理的LeetCode-----翻转二叉树的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Confluence 6 访问你的宏正文
- 下一篇: Unity UGUI——Rect Tra