1、注意和前序、中序、后序遍历打印区别开来。
2、借助于队列
class Solution {
public:
vector<int> PrintFromTopToBottom(TreeNode* root) {
if (!root)return result;
que.push(root);
while (!que.empty())
{
TreeNode* data = que.front();
result.push_back(data->val);
if (data->left != NULL)
{
que.push(data->left);
}
if (data->right != NULL)
{
que.push(data->right);
}
que.pop();
}
return result;
}
private:
vector<int>result;
queue<TreeNode*>que;
};