中序遍历

来源:互联网 发布:qq飞车皮皮虾改车软件 编辑:程序博客网 时间:2024/06/06 01:53

中序遍历

问题描述:

给出一棵二叉树,返回其中序遍历。
样例

给出二叉树 {1,#,2,3},

   1    \     2    /   3

返回 [1,3,2].

解题思路:

用递归算法按照中序遍历访问二叉树的结点,并把访问到的结点值存放到向量中。

代码实现:

class Solution {
    /**
     * @param root: The root of binary tree.
     * @return: Inorder in vector which contains node values.
     */
public:
    vector<int>ss;
    vector<int> inorderTraversal(TreeNode *root) {
        // write your code here
        if(root!=NULL){
        inorderTraversal(root->left);
        ss.push_back(root->val);
        inorderTraversal(root->right);
        }
        return ss;
    }
};

A题感悟:

根据前序遍历和中序遍历的定义,理解了前序遍历的算法,中序遍历只需改变一下代码的顺序即可。



0 0