Advertisement

二叉树的前序、中序和后序遍历(递归),以及层序遍历(C++实现)

阅读量:

1. 二叉树的前序遍历

按照先访问根节点、然后是左子树、最后是右子树的方式进行遍历。具体来说:

  1. 首先处理当前节点的值:由于最先访问的是根节点 root ,因此会将 root.val 存入指定的答案容器中。
  2. 接着处理其左子树:在完成当前节点的操作后(即处理了 root.val),程序会转向其左孩子 node.left ,并将其作为新的 root 进行同样的操作。
复制代码
    /** * 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:
    vector<int> ans;
    vector<int> preorderTraversal(TreeNode* root) {
        if(root != NULL){
            ans.push_back(root -> va

全部评论 (0)

还没有任何评论哟~