/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { }};*/class Solution {public: vector PrintFromTopToBottom(TreeNode* root) { vector res; if(root == nullptr) return res; queueq; q.push(root); while ( !q.empty() ){ auto node = q.front(); res.emplace_back(node->val); if(node->left != nullptr) q.push(node->left); if(node->right != nullptr) q.push(node->right); q.pop(); } return res; }};