• 从上往下打印二叉树(分层遍历)


      从上往下打印二叉树的每个节点,同一层的节点按照从左到右的顺序打印。

      从上到下打印二叉树的规律:每一次打印一个节点的时候,如果该节点有子节点,则把该节点的子节点放到一个队列的末尾。接下来到队列的头部取出最早进入队列的节点,重复前面的打印操作,直到队列中所有的节点都被打印出来为止。

      

    struct TreeNode {
        int val;
        TreeNode* left;
        TreeNode* right;
    };
    
    void LevelOrder(BinaryTreeNode* root) {
        if (root == NULL) return;
    
        queue<BinaryTreeNode*> q;
    
        q.push(root);
    
        while (!q.empty()) {
            BinaryTreeNode* p = q.front();
            q.pop();
    
            cout<<p->val<<" ";
    
            if (p->left)
                q.push(p->left);
    
            if (p->right)
                q.push(p->right);
        }
    }
  • 相关阅读:
    学生信息表
    水仙花数
    DirectAccess完整配置
    这些惹人嫌系统安装方法
    求解方程式
    AD DS的维护之备份还原
    简单的switch语句
    linux_常用命令
    小小问题
    frameset和frame
  • 原文地址:https://www.cnblogs.com/vincently/p/4776754.html
Copyright © 2020-2023  润新知