二叉树的中序遍历,前序遍历,后序遍历
生活随笔
收集整理的這篇文章主要介紹了
二叉树的中序遍历,前序遍历,后序遍历
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前序遍歷:按照訪問根節點——》左子樹——》右子樹的方式遍歷這棵樹,而在訪問左子樹或者右子樹的時候,我們按照同樣的方式遍歷,直到遍歷完整棵樹。
中序遍歷:按照訪問左子樹——》根節點——》右子樹的方式遍歷這棵樹,而在訪問左子樹或者右子樹的時候按照同樣的方式遍歷,直到遍歷完整棵樹
后序遍歷:按照訪問左子樹——》右子樹——》根節點的方式遍歷這棵樹,而在訪問左子樹或者右子樹的時候,按照同樣的方式遍歷
前序遍歷程序示例
class Solution { public:vector<int> result ;void kun(TreeNode* koot){if(koot == nullptr){return ;}result.push_back(koot->val) ;kun(koot->left) ;kun(koot->right) ; }vector<int> preorderTraversal(TreeNode* root) {kun(root) ;return result ;} };后序遍歷程序示例
class Solution { public:vector<int> result ;void kun(TreeNode* koot){if(koot == nullptr){ return ;}kun(koot->left) ;kun(koot->right) ;result.push_back(koot->val) ;}vector<int> postorderTraversal(TreeNode* root) {kun(root) ;return result ;} };中序遍歷程序示例
class Solution { public:vector<int> result ;void kun(TreeNode* koot){if(koot == nullptr){ return ;}kun(koot->left) ;result.push_back(koot->val) ;kun(koot->right) ;}vector<int> postorderTraversal(TreeNode* root) {kun(root) ;return result ;} };對比三段程序中,result.push_back()的位置,正好對應前中后
總結
以上是生活随笔為你收集整理的二叉树的中序遍历,前序遍历,后序遍历的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5脚耳机插座原理图_【连载十九】手机维修
- 下一篇: Webrtc 多人视频会议系统 服务器