看着像BFS,其实是DFS。
学到了一句,二维数组插入空一维数组:
v.push_back(vector<int>());
class Solution {
public:
vector<vector<int> > v;
void dfs(TreeNode* p,int deep){
if(p==NULL) return ;
if(deep>=v.size()){
v.push_back(vector<int>());
}
v[deep].push_back(p->val);
dfs(p->left,deep+1);
dfs(p->right,deep+1);
}
vector<vector<int> > Print(TreeNode* pRoot) {
dfs(pRoot,0);
return v;
}
};
本文介绍了一种使用深度优先搜索(DFS)而非广度优先搜索(BFS)来打印二叉树节点的方法。通过递归实现,当节点深度大于当前记录的最大深度时,创建新的一维数组并插入到结果集合中。此外,还分享了如何在二维数组中插入空的一维数组的技巧。

被折叠的 条评论
为什么被折叠?



