0
/*performing simple tree traversal in C++ and copying tree levels node data to vector<vector<int>> rows:
Getting error: no matching function for call to 'std::vector<int>::push_back(std::vector<int>&)'
*/
class Sample {
public:
vector<vector<int>> zigzagLevelOrder(TreeNode* root)
{
vector<vector<int>> result;
zigzagLevelOrder(root, result, 0);
return result;
}
void zigzagLevelOrder(TreeNode* root, vector<vector<int>>&result, int level)
{
if(level == result.size())
{
vector<int> v;
v.push_back(root->val);
result[level].push_back(v);
}
else
{
result[level].push_back(root->val);
}
zigzagLevelOrder(root->left, result, level + 1);
zigzagLevelOrder(root->right, result, level + 1);
}
};
どのエラーが表示されますか? –
@Henri root-> valはintです –
@Anon:私は次の行でエラーが発生しています:result [level] .push_back(v); –