Leetcode日常記錄:NO.226 反轉二叉樹題解
題目
翻轉一棵二叉樹。
思路
和反轉有關的問題,我們可以看做一個遞迴問題,不斷更換左右子樹,當從上至下更換到根節點時,返回根節點即可
程式碼
/**
* 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(ç{
return root;
}
swap(root->left,root->right);
invertTree(root.left);
invertTree(root.right);
return root;
}
};
問題
這裡面出現了兩個問題
- 在二叉樹操作中最好使用xx.left,xx.right對節點進行操作,在遞迴過程中起名會使得名稱重複,出現無法預料的後果;
- 這是一個標準的遞迴操作,邊界條件或者說是結束條件即為:(!root),既保證了當樹為空時返回根節點,也保證了遞迴到最深層時可以及時的進行結束遞迴的操作。
相關文章
- LeetCode每日一題: 翻轉二叉樹(No.226)LeetCode每日一題二叉樹
- iOS實現反轉二叉樹iOS二叉樹
- 記錄刷題日常
- Leetcode 題解系列 -- 對稱二叉樹(遞迴)LeetCode二叉樹遞迴
- LeetCode題解(Offer26):判斷二叉樹A是否為二叉樹B的子樹(Python)LeetCode二叉樹Python
- 5分鐘瞭解二叉樹之LeetCode裡的二叉樹二叉樹LeetCode
- Leetcode 記錄 不會解的題LeetCode
- LeetCode解題記錄(雙指標專題)LeetCode指標
- 【LeetCode-二叉樹】二叉樹前序遍歷LeetCode二叉樹
- leetcode 每日一題 617 合併二叉樹LeetCode每日一題二叉樹
- 【Leetcode千題】617. 合併二叉樹LeetCode二叉樹
- leetCode解題記錄1 - 兩數之和LeetCode
- LeetCode刷題記錄與題解(C++版本)LeetCodeC++
- Leetcode 演算法題解系列 - 二叉樹的層序遍歷LeetCode演算法二叉樹
- Leetcode 二叉樹題目集合 (看完這個面試不會做二叉樹題,辣條給你!!!!!)LeetCode二叉樹面試
- LeetCode刷題記錄LeetCode
- leetcode題解記錄-752開啟轉盤鎖(python3)LeetCodePython
- LeetCode 熱題 HOT 100 Java題解——96. 不同的二叉搜尋樹LeetCodeJava
- leetcode 刷題視訊(5) - 二叉樹與圖LeetCode二叉樹
- 程式碼隨想錄演算法訓練營第十四天|leetcode226. 翻轉二叉樹、leetcode101.對稱二叉樹、leetcode104.二叉樹的最大深度、leetcode111.二叉樹的最小深度演算法LeetCode二叉樹
- LeetCode 對稱二叉樹LeetCode二叉樹
- Leetcode刷題筆記 501. 二叉搜尋樹中的眾數LeetCode筆記
- leetcode解題目錄LeetCode
- LeetCode 熱題 HOT 100 Java題解——94. 二叉樹的中序遍歷LeetCodeJava二叉樹
- LeetCode題解(Offer24):反轉連結串列(Python)LeetCodePython
- LeetCode題144. 二叉樹的前序遍歷LeetCode二叉樹
- LeetCode第 543 題:二叉樹的直徑(C++)LeetCode二叉樹C++
- 【筆記】樹、森林與二叉樹的轉換與應用筆記二叉樹
- 玩轉二叉樹二叉樹
- 程式碼隨想錄——二叉樹-12.平衡二叉樹二叉樹
- leetcode刷題記錄 661~LeetCode
- LeetCode刷題記63-109. 有序連結串列轉換二叉搜尋樹【檢視解法】LeetCode
- LeetCode題解(Offer28):判斷二叉樹是否左右對稱(Python)LeetCode二叉樹Python
- LeetCode解題記錄(貪心演算法)(二)LeetCode演算法
- LeetCode解題記錄(貪心演算法)(一)LeetCode演算法
- 程式碼隨想錄演算法訓練營第十七天|leetcode654. 最大二叉樹、leetcode617.合併二叉樹、leetcode700.二叉搜尋樹中的搜尋、leetcode98.驗證二叉搜尋樹演算法LeetCode二叉樹
- 記錄一些日常的小問題(前端)前端
- 相同二叉樹和鏡面二叉樹問題二叉樹