【Leetcode】NO.94 二叉樹的中序遍歷 (C++&Python) [二叉樹]
互聯網 2022/1/4 11:37:56
題目:94. 二叉樹的中序遍歷
給定一個二叉樹的根節點 root ,返回它的 中序 遍歷。
思路
- 迭代法使用中序遍歷
- 一直遍歷到做子樹的最底層
- 再pop出當前節點,之后再遍歷右子樹
開辟一個棧存節點,一個數組保存節點的值
判斷節點是否為空,或者棧是否為空
代碼
/** * 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<int> inorderTraversal(TreeNode* root) { stack<TreeNode*> s; vector<int> result; TreeNode *cur = root; while(cur!=NULL || !s.empty()) { if(cur!=NULL) //將一直遍歷到最左邊 { s.push(cur); cur = cur->left; } else { // 把點Put cur = s.top(); s.pop(); //將數據彈出了 result.push_back(cur->val); cur = cur->right; } } return result; } };

關于找一找教程網
本站文章僅代表作者觀點,不代表本站立場,所有文章非營利性免費分享。
本站提供了軟件編程、網站開發技術、服務器運維、人工智能等等IT技術文章,希望廣大程序員努力學習,讓我們用科技改變世界。
[【Leetcode】NO.94 二叉樹的中序遍歷 (C++&Python) [二叉樹]]http://www.yachtsalesaustralia.com/tech/detail-279854.html
- 2022-05-20leetcode(18)python基本操作
- 2022-05-20Python shutil
- 2022-05-20用python為心愛的人制作520照片墻,已成功做出效果圖
- 2022-05-20python筆記
- 2022-05-20利用Python編寫測試可以繞過上傳文件擴展名限制的工具
- 2022-05-20【Python元素定位API之CSS_SELECTOR】
- 2022-05-20批量將python 文件編譯成so系統文件
- 2022-05-20使用Python Winreg模塊操作注冊表時報錯解碼問題的解決方法
- 2022-05-20Python中內建屬性__getattribute__的用法總結
- 2022-05-20python對列表,字典的操作