when I am using int& maxlevel in the function it is working fine but when I use int maxlevel i.e. without reference it doesn’t work, could you tell me the use of reference variable in this scenerio.
void right(TreeNode* root,vector& v,int& maxlevel,int level){
if(!root)return;
if(level>maxlevel){
v.push_back(root->val);
maxlevel = level;
}
right(root->right,v,maxlevel,level+1);
right(root->left,v,maxlevel,level+1);
}
vector<int> rightSideView(TreeNode* root) {
vector<int> v;
int max = -1;
right(root,v,max,0);
return v;
}