按层遍历树,要用到queue
class Solution { public: vector<vector<int>> levelOrder(TreeNode* root) { vector<vector<int>> ret; //ahd(root) //a(ret) queue<TreeNode*> que; //a(que) if(!root) return ret; que.push(root); //dsp while(!que.empty()){ int n=que.size(); vector<int> line; //a(line) while(n-->0){ auto cur=que.front(); que.pop(); line.push_back(cur->val); //a(cur) //lk("root",cur) if(cur->left) que.push(cur->left); if(cur->right) que.push(cur->right); //dsp } ret.push_back(line); //dsp } return ret; } };